있을 유, 참 진

[JWT] Json Web Token 인증 본문

Spring/JWT

[JWT] Json Web Token 인증

U_ma 2023. 4. 5. 16:36
JWT(Json Web Token)란 무엇인가?
   - 사용법 설명
JWT 기반 토큰 인증
JWT의 장단점
   - 장점
   - 단점

JWT(Json Web Token)란 무엇인가?

💡 JSON 객체를 통해 안전하게 정보를 전송할 수 있는 웹표준(RFC7519), JWT는 `.`을 구분자로 세 부분으로 구분된 문자열로 이뤄지고 구성은 아래와 같다.
  • 헤더: 토큰의 타입과 해싱 알고리즘
  • 내용: 실제로 전달할 정보
  • 서명: 위변조 방지를 위한 값

회원을 구분할 수 있는 정보가 담기는 곳이 JWT의 payload 부분이고 이곳에 담기는 정보의 한 부분을 Claim이라고 칭한다. Claimname : value 한 쌍으로 이뤄지며 여러 개의 Claim을 넣을 수 있다. 한마디로 요약하면 JSON이다.

JWT 기반 토큰 인증

💡 클라이언트가 가진 JWT 토큰을 각 서버에서 검증해 인증의 과정을 거치는 개념

JWT의 장단점

장점

  • 중앙의 인증서버, 데이터 스토어에 대한 의존성 없음, 서버에서 자유로워 시스템의 수평적 확장에 유리
  • Base64 URL Safe Encoding → URL, Cookie, Header 어디에도 사용 가능

단점

  • 토큰은 클라이언트에만 존재해 서버에서 클라이언트 토큰을 조작할 수 없다.
  • Payload 크기에 따라서 네트워크 사용량 증가
수정 로그
23 - 04 - 07: 제목 변경

참고 사이트

Comments