AnonymousAuthenticationFilter

AnonymousAuthenticationFilter

  • Authentication 객체가 없는 Client를 접근을 막는 것이 아니라 권한이 없는 상태로도 접근을 할 수 있게 하는 Filter
  • 익명사용자 인증처리하는 Filter
  • 익명사용자와 인증 사용자를 구분해서 처리하기 위한 용도로 사용
  • 화면에서 인증 여부를 구현할 때 isAnonymous()와 isAuthenticated() 로 구분해서 사용
  • 인증객체를 세션에 저장하지 않음.

 

 

  • Client가 서버에 접근함.
  • AnonymousAuthenticationFilter가 SecurityContext에 인증객체 이 있는지 없는지 확인함.
    •  인증 객체가 있다면 chain.doFilter를 수행
  • 인증객체가 없는 Client는 익명사용자용 AuthenticationToken을 만듬. (Null 상태가 아님)
  • 익명사용자토큰을 SecurityContext에 저장함. 
익명 사용자가 Null이 아닌 이유는 SecurityContextHolder가 Null 값인 Authentication을 받으면 예외 처리를 하기 때문이다.

 

'Backend > Security' 카테고리의 다른 글

SessionManagementFilter, ConcurrentSessionFilter  (0) 2023.01.03
동시 세션 제어  (0) 2023.01.03
Remember Me 인증  (0) 2023.01.03
Logout 처리 및 LogoutFilter  (0) 2023.01.03
UsernamePasswordAuthenticationFilter  (0) 2023.01.03