본문 바로가기
Spring

Spring Framework : Spring Security 인증, 권한부여

by autumnly 2017. 6. 8.


스프링 시큐리티는 서블릿 필터를 이용하며 내부적으로 여러 개의 필터들을 포함하고 있다.


먼저 Filter 인터페이스를 구현하는 FilterChainProxy 클래스의 doFilter()호출

내부에서 FilterChainProxy 클래스의 내부 클래스인 VirtualFilterChain 클래스의 doFilter() 호출

VirtualFilterChain은 스프링 시큐리티가 지원하는 필터 클래스(11개) 들을 List<Filter>에 관리하며, 순차적으로 doFilter()를 호출하도록 한다.



스프링 시큐리티에서는 인증 관리자, 접근 결정 관리자가 사용자의 리소스 접근을 관리한다.

인증 관리자는 UsernamePasswordAuthenticationFilter 에 존재하고

접근 결정 관리자는 FilterSecurityInterceptor 에 존재한다.