개발/Spring & Springboot

[SpringBoot] JWT Tutorial 1 - JWT

뚜키 💻 2022. 5. 20. 22:21
반응형

## 개인기록용

# Spring Boot JWT Tutorial 학습

https://github.com/jennie267/jwt-tutorial

 

>  [SpringBoot] JWT Tutorial 1 - JWT

[SpringBoot] JWT Tutorial 2 - 프로젝트 생성

[SpringBoot] JWT Tutorial 3 - Security 설정

[SpringBoot] JWT Tutorial 4 - Data 설정

[SpringBoot] JWT Tutorial 5 - JWT 코드, Security 설정 추가

[SpringBoot] JWT Tutorial 6 - DTO, Repository, 로그인

[SpringBoot] JWT Tutorial 7 - 회원가입, 권한검증


 

https://jwt.io/

JWT란?

JSON 객체를 사용해서 토큰 자체에 정보들을 저장하고 있는 Web Token. RFC7519 웹 표준으로 지정되어있다.

 

JWT는 Header, Payload, Signature 3개의 부분으로 구성되어져 있음

 

Header - Signature를 해싱하기 위한 알고리즘 정보들이 담겨있음

Payload - 서버와 클라이언트가 주고받는, 시스템에서 실제로 사용될 정보에 대한 내용들이 담겨있음

Signature - 토큰의 유효성 검증을 위한 문자열

 

JWT 장점

- 중앙의 인증서버, 데이터 스토어에 대한 의존성 없음, 시스템 수평 확장 유리

- Base64 URL Safe Encoding을 이용하기 때문에 URL, Cookie, Header 모두 사용 가능

 

JWT 단점

- Payload에 저장하는 정보가 많아지면 네트워크 사용량 증가, 데이터 설계 고려 필요

- 토큰이 클라이언트에 저장, 서버에서 클라이언트의 토큰을 조작할 수 없음

 

 

 


 

Reference

Spring Boot JWT Tutorial

https://github.com/SilverNine/spring-boot-jwt-tutorial

 

GitHub - SilverNine/spring-boot-jwt-tutorial

Contribute to SilverNine/spring-boot-jwt-tutorial development by creating an account on GitHub.

github.com

 

반응형