TODAY
- 심화 강의 내용 중 Spring Security에 대해 다시 공부하면서 내용을 정리했다.
Security에서 JWT를 사용한 인증/인가 흐름
- 사용자) 회원가입
- 해당 URI 요청은 permitAll() 처리, 입력값으로 Service단에서 회원가입 진행
- 서버) 사용자 정보 저장 시 비밀번호 암호화
- 사용자) 로그인
- 해당 URI 요청은 permitAll() 처리, 입력값으로 Service단에서 회원인증 진행 (비밀번호 일치 여부 등 확인)
- 서버) 인증 성공 시) JWT 토큰 생성, Header 추가 -> 반환
클라이언트) 토큰 쿠키저장소에 저장
- 사용자) 서버에 요청 시 발급받은 JWT 토큰을 같이 보냄
- 서버) JWT 토큰 검증 -> CustomSecurityFilter로 인증/인가 처리
- -> CustomSecurityFilter에서 SecurityContextHolder에 인증 완료한 사용자의 정보 저장