2022 07 11
2022-07-11
Spring Security를 통한 인증 및 권한 부여
- SpringSecurity Filter
- 기능별 필터의 집합으로 되어있고 필터의 처리 순서는 아래와 같음
- 클라이언트가 리소스 접근 권한이 없는 경우 기본적으로 로그인 폼으로 보냄: UsernamePasswordAuthenticationFilter
- RestAPI에서는 로그인 폼이 없으니, UsernamePasswordAuthenticationFilter 전에 관련 처리를 넣어야 함
- Filter 순서
- ChannelProcessingFilter
- SecurityContextPersistenceFilter
- ConcurrentSessionFilter
- HeaderWriterFilter
- CsrfFilter
- LogoutFilter
- X509AuthenticationFilter
- AbstractPreAuthenticatedProcessingFilter
- CasAuthenticationFilter
- UsernamePasswordAuthenticationFilter
- BasicAuthenticationFilter
- SecurityContextHolderAwareRequestFilter
- JaasApiIntegrationFilter
- RememberMeAuthenticationFilter
- AnonymousAuthenticationFilter
- SessionManagementFilter
- ExceptionTranslatorFilter
- FilterSecurityInterceptor
- SwitchUserFilter
- API 인증 및 제한된 리소스의 요청
- 인증을 위해 가입 및 로그인 api를 구현
- ROLE_USER 권한을 회원에게 부여
- JwtAuthenticationFilter
- UsernamePasswordAuthenticationFilter 앞에 세팅