작성
·
619
0
01:05
30분이 지나 세션이 만료된 경우
브라우저를 종료하여 세션쿠키가 없어진 경우
위 두 가지 경우 아래와 같은 순서로 정리해도 될까요?
세션id로 세션객체를 찾을 수 없는 상황에 놓이게 됩니다.
그에 따라 세션 안에 저장된 securityContext 또한 찾을 수 없다.
2의 이유로 securityContext안에 있는 인증객체를 찾을 수 없다
이 정리가 모두 맞다면,
세션과 securityContext는 항상 생명주기를 같이하는 관계인지도 궁금합니다
답변 1
0
네
정리하신 내용은 모두 맞습니다.
그러나 세션과 securityContext 의 생명주기는 같지 않습니다.
SecurityContext 는 세션에 저장되는 일반 객체일 뿐입니다.
비록 세션이 무효화 되면 SecurityContext 를 참조할 수 없게 되어 다시 인증을 받게 되는 상황이 오게 되지만 정책상 세션을 전혀 사용하지 않는 경우도 있기 때문에 SecurityContext 를 세션과 반드시 주기를 같이 하는 관계의 개념이 아닌 세션을 사용하는 경우에는 세션안에 저장되어 인증상태를 계속 유지한다라고 개념을 이해하시는 것이 좋습니다.
SecurityContext 는 그 자체로서의 의미가 있기 보다는 SecurityContext 안에 Authentication 객체가 존재하는지가 더 중요하다고 볼 수 있습니다.