Q. JWT를 구현하면 사용자가 로그인 하였을 때 로그인 사용자의 정보가 세션에 저장되지 않아?
Q. 인증 정보라는 것이 사용자 아이디와 패스워드 등 정보가 담긴 객체를 의미하는 건지 아니면 SessionId같이 로그인을 했다는 증거를 의미하는 건지?
Q. 세션 쿠키 방식은 stateful한 반면 JWT는 stateless하다고 하는데 이 기준을 정하는 가장 큰 차이가 뭐야?
Q. 여기서 말하는 인증 정보는 User 객체야?
Q. 그럼 JWT 방식에서는 시큐리티의 principal 객체를 사용할 수 없어?
Q. JWT 토큰에서 클레임 정보를 추출하여 Principal 객체에 담아서 SecurityContextHolder에 저장한다고 하는데 그럼 JWT도 세션에 인증정보를 저장했으니 stateless에 어긋나는 거 아니야?
Q. 그럼 세션쿠키 방식에서는 SecurityContextHolder가 아닌 Session에서 인증 정보를 꺼낼 수 있어?
Q. 결론은 세션 쿠키와 JWT의 가장 큰 차이는 서버의 세션에 사용자의 인증 정보를 저장하는지의 여부이며 세션 쿠키는 사용자의 세션에 인증 정보를 저장함으로써 stateful한 성질을 갖고, JWT는 인증 정보를 세션에 저장하지 않아서 stateless한 게 맞아? 그리고 둘 중 REST API에 적합한 건 JWT 방식이야?