JWT란?
Json 객체를 이용하여 저장하는 웹 토큰으로 인증에 필요한 정보들을 Token에 담아 인코딩 하여 사용합니다.
헤더
- 시그니처를 해싱하기 위한
알고리즘 정보
들이 담겨있음
페이로드
- 서버와 클라이언트가 주고받는 시스템에 실제로 사용될 정보를 담고 있음
시그니처
- 토큰의 유효성을
검증
하기 위한 문자열
장점
- 인증서버, 데이터 스토어에 대한 의존성이 없음
- BASE64 URL SAFE Incoding → URL, COOKIE, HEADER 모두 사용 가능
단점
- Payload의 정보가 많이 지면 네트워크 사용량 증가하여 데이터 설계 고려가 필요함
- 토큰이 클라이언트에 저장되기 때문에 서버에서 클라이언트 토큰을 조작할 수 없음
Reference