작성
·
267
0
안녕하세요. 백기선선생님
강의내용을 아래와 같이 정리했습니다.
- Authentication 인증객체는 SecurityContext에 저장됨.
- HttpSession에 SecurityContext가 캐싱됨.
질문
쿠키-세션방식에서는 모든 사용자의 인증정보를 서버측 세션에 보관했지만 이를 개선한 방식이 jwt토큰방식으로 알고 있습니다.
그런데 jwt토큰으로 인증을 마치고 나면 인증정보가 SecurityContext에 저장되고 이 SecurityContext도 세션에 캐싱되니 결론적으로 jwt방식도 로그인한 모든 사용자의 인증정보를 서버에 저장하게 되는 꼴이 아닌가 생각됩니다.
위 내용중에 잘못된 부분이 있으면 조언부탁드립니다.
감사합니다!
답변 2
1
네 JWT는 토큰 스팩일 뿐 해당 토큰을 클라이언트 (브라우저나 앱)이 가지고 있다가 서버로 요청 보낼 때 같이 보내오면 서버는 해당 토큰이 유효한지만 확인하기 때문에 stateless 방식의 인증을 구현할 때 자주 쓰입니다.
0
https://okky.kr/article/663919
위 글을 보고 SecurityContext의 생명주기가 HttpRequest에 의존적이라 Authentication인증객체를 서버가 계속 보관하지 않고 요청 1회성으로만 인증객체를 Controller에서 이용하고 소멸되는 것으로 이해할 수 있었습니다. 따라서 jwt방식은 '무상태'라고 할 수 있을것 같습니다.
답변감사합니다!