Spring Security, JWT를 물흐르듯 자연스럽게 사용하기 위한 연습.
그 과정을 기록하려고 한다.
의존성 추가
Spring Security, JWT 관련 의존성들을 추가해준다.
JWT 로그인 흐름
•
Client → 로그인 요청
•
Server
1.
로그인 정보 JWT로 암호화
2.
JWT를 Client 응답 Header에 전달
•
Client → JWT 저장 (쿠키)
•
Client → JWT를 API 요청 시마다 Header에 포함
HTTP/1.1 200 OK
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Plain Text
복사
•
Server
1.
Client 가 전달한 JWT 위조 여부 검증 (Secret Key 사용)
2.
유효기간 검증
•
Server → API 응답
JwtUtil
JwtUtil 클래스는 JWT를 생성, 검증, 파싱한다.