728x90
반응형
💡 Authentication (인증)의 기본 구조
- 필터들 중에 일부 필터는 인증 정보에 관여한다.
- 이들 필터가 하는 일은 AuthenticationManager 를 통해 Authentication 을 인증하고 그 결과를 SecurityContextHolder 에 넣어주는 일입니다.
💡 Authentication에 들어가는 내용
- Set <GrantedAuthority> authorities : 인증된 권한 정보 목록
- principal : 인증 대상에 관한 정보로 사용자의 아이디 혹은 User객체가 저장된다.
- credentials : 인증 확인을 위한 정보로 주로 비밀번호가 온다. (※ 인증 후에는 보안을 위해 삭제한다.)
- details : 그 밖에 필요한 정보로 IP, 세션정보, 기타 인증요청에서 사용했던 정보들이 들어간다.
- boolean authenticated : 인증이 되었는지를 체크한다.
💡 인증 토큰(Authentication)을 제공하는 필터들
- UsernamePasswordAuthenticationFilter : 폼 로그인 -> UsernamePasswordAuthenticationToken
- RememberMeAuthenticationFilter : remember-me 쿠키 로그인 -> RememberMeAuthenticationToken
- AnonymousAuthenticationFilter : 로그인하지 않았다는 것을 인증함 -> AnonymousAuthenticationToken
- SecurityContextPersistenceFilter : 기존 로그인을 유지함(기본적으로 session 을 이용함)
- BearerTokenAuthenticationFilter : JWT 로그인
- BasicAuthenticationFilter : ajax 로그인 -> UsernamePasswordAuthenticationToken
- OAuth2LoginAuthenticationFilter : 소셜 로그인 -> OAuth2LoginAuthenticationToken, OAuth2AuthenticationToken
- OpenIDAuthenticationFilter : OpenID 로그인
- Saml2WebSsoAuthenticationFilter : SAML2 로그인
728x90
반응형
'🍃SpringFramework > SpringSecurity' 카테고리의 다른 글
[SpringSecurity] Session 인증 (0) | 2023.09.10 |
---|---|
[SpringSecurity] Authorization. 권한 (0) | 2023.09.10 |
[SpringSecurity] Security의 흐름 (0) | 2023.09.10 |
[SpringSecurity] Spring Security란? (0) | 2023.09.10 |
[SpringSecurity] Session 사용하기 (0) | 2023.09.10 |