1. SecurityConfiguration 기본 구성
공식문서에 의하면 WebSecurityConfigurerAdapter를 사용해서 구성하는 방식은 deprecated 되면서 SecurityFilterChain 빈을 등록하는 방식으로 변경되습니다.
2. cors, csrf, session 등 HttpSecurity 설정
자세한 내용은 공식문서를 참고하면서 보면 됩니다.
2-1. cors
- cors() 방식은 Deprecated 되었으므로 cors(Customizer<CorsConfigurer<HttpSecurity>> corsCustomzier) 방식을 사용해야 합니다.
@Configuration
@EnableWebSecurity
public class CorsSecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.cors(Customizer.withDefaults());
return http.build();
}
}
2-2. csrf
- csrf() 방식은 Deprecated 되었으므로 csrf(Customizer<CsrfConfigurer<HttpSecurity>> csrfCustomizer) 방식을 사용해야 합니다.
@Configuration
@EnableWebSecurity
public class CsrfSecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.csrf((csrf) -> csrf.disable());
return http.build();
}
}
2-3. sessionManagement
- sessionManagement() 방식은 Deprecated 되었으므로 sessionManagement(Customizer<SessionManagementConfigurer<HttpSecurity>> sessionManagementCustomizer) 방식을 사용해야합니다
@Configuration
@EnableWebSecurity
public class SessionManagementSecurityConfig {
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.sessionManagement(session -> session
.sessionCreationPolicy(SessionCreationPolicy.STATELESS));
return http.build();
}
}
댓글