아틴
Atin
아틴
전체 방문자
오늘
어제
  • 분류 전체보기 (460)
    • Devlopment (246)
      • 정리 글 (20)
      • MicroServices (0)
      • Reactive, Concurrenc.. (12)
      • Java (44)
      • Spring (20)
      • C,C++,Ruby,Python (52)
      • Mobile (39)
      • Web (35)
      • Tip & Info (14)
      • Unit Test (7)
    • Infra (44)
      • OS (21)
      • RDBMS (13)
      • NoSQL&Cache (5)
      • AWS (4)
    • Computer Science (11)
    • Etc (156)

블로그 메뉴

  • Home
  • Guestbook

공지사항

인기 글

태그

  • CSS
  • Ruby on Rails
  • 전라도
  • 해킨토시
  • Android
  • 아이폰
  • 자바
  • 여행
  • TRPG
  • jsp
  • Linux
  • 정읍
  • javascript
  • 안드로이드
  • mysql
  • Java
  • Dungeons & Dragons
  • Python
  • C
  • 던젼 앤 드래곤즈

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
아틴

Atin

[Spring Security] 필터 Filter, SecurityFilterChain 이해하기
Devlopment/Spring

[Spring Security] 필터 Filter, SecurityFilterChain 이해하기

2017. 2. 8. 13:49
반응형

Spring Security를 커스터마이징하기 위해서는 그리고 이해하기 위해서는 아래 필터 체인을 이해하는 것이 좋다.

아래 그림은 인터넷에 돌아다니는 Spring Security 호출 그림을 내가 다시 깔끔하게 그려본 것이다.




Table 3.1. Standard Filter Aliases and Ordering
(https://docs.spring.io/spring-security/site/docs/3.1.x/reference/ns-config.html)


AliasFilter ClassNamespace Element or Attribute
CHANNEL_FILTERChannelProcessingFilterhttp/
intercept-url
@requires-channel
SECURITY_CONTEXT_FILTERSecurityContextPersistenceFilterhttp
CONCURRENT_SESSION_FILTERConcurrentSessionFiltersession-management/
concurrency-control
LOGOUT_FILTERLogoutFilterhttp/logout
X509_FILTERX509AuthenticationFilterhttp/x509
PRE_AUTH_FILTERAstractPreAuthenticatedProcessingFilter SubclassesN/A
CAS_FILTERCasAuthenticationFilterN/A
FORM_LOGIN_FILTERUsernamePasswordAuthenticationFilterhttp/form-login
BASIC_AUTH_FILTERBasicAuthenticationFilterhttp/http-basic
SERVLET_API_SUPPORT_FILTERSecurityContextHolderAwareRequestFilterhttp/
@servlet-api-provision
JAAS_API_SUPPORT_FILTERJaasApiIntegrationFilterhttp/
@jaas-api-provision
REMEMBER_ME_FILTERRememberMeAuthenticationFilterhttp/remember-me
ANONYMOUS_FILTERAnonymousAuthenticationFilterhttp/anonymous
SESSION_MANAGEMENT_FILTERSessionManagementFiltersession-management
EXCEPTION_TRANSLATION_FILTERExceptionTranslationFilterhttp
FILTER_SECURITY_INTERCEPTORFilterSecurityInterceptorhttp
SWITCH_USER_FILTERSwitchUserFilterN/A



API Document

- Spring Security 3.1.7 API Docs

Spring Javadocs 3.1.7

Spring Javadocs Current


- Spring Security Filter Chain

Spring Javadocs 3.1.x

Spring Javadocs Current


Filter Class

- SecurityContextPersistenceFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- LogoutFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


UsernamePasswordAuthenticationFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


DefaultLoginPageGeneratingFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


BasicAuthenticationFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- RememberMeAuthenticationFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- SecurityContextHolderAwareRequestFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- AnonymousAuthenticationFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- SessionManagementFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- ExceptionTranslationFilter

Spring Javadocs 3.1.7

Spring Javadocs Current


- FilterSecurityInterceptor

Spring Javadocs 3.1.7

Spring Javadocs Current



Authentication class

- SecurityContextHolder

Spring Javadocs 3.1.7

Spring Javadocs Current



Authentication interface

- SecurityContextRepository

Spring Javadocs 3.1.7

Spring Javadocs 3.1.7


- SecurityContext

Spring Javadocs 3.1.7

Spring Javadocs Current


- LogoutSuccessHandler

Spring Javadocs 3.1.7

Spring Javadocs Current


- Authentication

Spring Javadocs 3.1.7

Spring Javadocs Current


- AuthenticationManager

Spring Javadocs 3.1.7

Spring Javadocs Current


- AuthenticationProvider

Spring Javadocs 3.1.7

Spring Javadocs Current


- UserDetails

Spring Javadocs 3.1.7

Spring Javadocs Current


- AuthenticationSuccessHandler

Spring Javadocs .3.1.7

Spring Javadocs .Current


- UserDetailService

Spring Javadocs 3.1.7

Spring Javadocs Current


- GrantedAuthority

Spring Javadocs 3.1.7

Spring Javadocs Current


- AuthenticationFailureHandler

Spring Javadocs 3.1.7

Spring Javadocs Current


- SessionAuthenticationStrategy

Spring javadocs 3.1.7

Spring javadocs Current


- SessionRegistry

Spring javadocs 3.1.7

Spring javadocs Current


- RequestCache

Spring Javadocs 3.1.7

Spring Javadocs Current




Authorization interface

- AuthenticationEntryPoint

Spring Javadocs 3.1.7

Spring Javadocs Current


- AccessDeniedHandler

Spring javadocs 3.1.7

Spring javadocs Current


- AccessDecisionManager

Spring Javadocs 3.1.7

Spring Javadocs Current


- AccessDecisionVoter

Spring Javadocs 3.1.7

Spring Javadocs Current


- SecurityMetadataSource

Spring Javadocs 3.1.7

Spring Javadocs Current




Authorization class

- AffirmativeBased

implemented : AccessDecisionManager

Spring Javadocs 3.1.7

Spring Javadocs Current


- RoleVoter

implemented : AccessDecisionVoter

Spring Javadocs 3.1.7

Spring Javadocs Current

github java source

- AuthenticationVoter
Spring Javadocs 3.1.7
Spring Javadocs Current
gitjub java source

- DefaultMethodSecurityExpressionHandler 

implemented : MethodSecurityExpressionHandler, SecurityExpressionHandler

Spring Javadocs 3.1.7

Spring Javadocs Current


- AbstractAuthenticationToken 

implemented : Authentication

Spring Javadocs 3.1.7

Spring Javadocs Current

github java source


- AnonymousAuthenticationToken 

implemented : Authentication

Spring Javadocs 3.1.7

Spring Javadocs Current

github java source


- UsernamePasswordAuthenticationToken 

implemented : Authentication

Spring Javadocs 3.1.7

Spring Javadocs Current

github java source




반응형
저작자표시 비영리 변경금지 (새창열림)

'Devlopment > Spring' 카테고리의 다른 글

SPRING FRAMEWORK 5의 변화  (1) 2017.10.04
Spring File 읽어오기  (0) 2017.07.01
RestController의 기본 컨텐츠 타입 변경  (0) 2017.03.07
Spring message 설정하기  (0) 2017.02.20
Spring에서 Webjars 사용하기  (0) 2017.02.20
[SpringSecurity] Method 레벨에서 AccessDeniedException 처리하기  (0) 2017.02.07
Spring Security custom expression  (0) 2017.02.01
Spring Security 관련 레퍼런스 정리  (0) 2017.02.01
Jackson에서 null string 안 보이게 설정  (1) 2016.08.12
JPA Hibernate 사용 중 ORA-00001: 무결성 제약 조건( ORA-00001 에러  (0) 2016.06.07
    'Devlopment/Spring' 카테고리의 다른 글
    • Spring message 설정하기
    • Spring에서 Webjars 사용하기
    • [SpringSecurity] Method 레벨에서 AccessDeniedException 처리하기
    • Spring Security custom expression
    아틴
    아틴

    티스토리툴바