토큰 기반 인증 (JWT): 인증에 필요한 정보들을 암호화시킨 토큰이다.
세션과 달리 서버는 DB에 세션ID를 생성하지 않고, 유저의 ID를 이용해 사인 알고리즘을 이용해 ‘사인’을 해서 사인된 정보
를 string 형태로 유저에게 보내는 방식을 사용한다
유저가 서버에 요청을 보내려면, 세션ID와 유사하게 사인된 정보
또는 토큰
을 서버에 보내고, 서버가 해당 사인이 유효한지 체크하는 방식이다
특징
1. 세션과 달리 DB에 접근하지 않는다 -> 속도가 매우 빨라짐
2. 암호화되어있지 않다 -> 보안상 좋지 않다(비밀정보를 JWT안에 두면 안된다)
JWT를 만들 때 주의할 점🔗링크