Spring Security - SecurityContextPersistenceFilter

2021. 4. 17. 20:47SPRING/SPRING SECURITY

SecurityContextPersistenceFilter

역할

인증전

  • 새로운 SecurityContext를 생성한다.
  • 익명 사용자일 경우, AnonymousAuthenticationFilter에서 AnonymousAuthenticationToken(Authentication)객체를 SecurityContext에 저장한다.
  • 인증시, UsernamePasswordAuthenticationFilter에서 UsernamePasswordAuthentication(Authentication)객체를 SecurityContext에 저장한다.
  • 최종적으로 세션에 SecurityContext를 저장하고, SecurityContextHolder에서 해당 SecurityContext를 삭제한다. SecurityContextHolder는 다음 요청에 재사용되야하기 때문.

 

인증후

  • 세션에서 SecurityContext를 가져온다.
  • SecurityContextHolder에 SecurityContext를 저장하고 보안처리를 진행한다.