카테고리 없음
security, jwt..
하얀잔디
2022. 9. 28. 14:08
맨날 미루고 미뤄왔던 시큐리티와 설정 코드를 뜯어보고자 한다.
스프링 시큐리티란
스프링 기반의 어플리케이션 보안(인증,권한,인가) 담당하는 프레임워크임.
보안 :
기존 코드 :
ㅇ맨날 미루고 미뤄왔던 시큐리티와 설정 코드를 뜯어보고자 한다.
우선 동작과정을 살펴보자.
Security는 요청이 들어오면 , 여러 Filter들을 체인으로 묶고 자동으로 거치게 한다.
그럼 Filter는 무엇이고, 왜 Spring Security는 filter을 이용할까??
필터 : 디스패처 셔블릿 들어오기 전에 요청에 대해 필터링 할 수 있는 기능임.
과거에는 Filter는 서블릿기술 이라 Spring 빈으로 등록할 수 없지만 현재는
DelegatingFilterProxy를 활용해 Bean으로 필터를 등록할 수 있다.
기존 코드 :
@EnableWebSecurity
@EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true)
@RequiredArgsConstructor
@Configuration
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
1: @EnableWebSecurity :
WebSecurityConfigurerAdapter 을 상속받은 config 클래스에 저 에노테이션을 달면
SpringSecurityFilterChain이 자동으로 포함됨.
WebSecurityConfigurerAdapter