[Spring] WebSecurityConfigurerAdapter deprecated 해결법
2022. 7. 5. 22:22
반응형
Deprecated
기존에는 WebSecurityConfigurerAdapter를 상속받아 설정을 오버라이딩 하는 방식이었는데 바뀐 방식에서는 상속받아 오버라이딩하지 않고 모두 Bean으로 등록합니다.
변경 전 코드
@Configuration
@EnableWebSecurity
@RequiredArgsConstructor
public class SecurityConfig extends WebSecurityConfigurerAdapter {
private final SecurityHandler securityHandler;
@Bean
public SHA256CodeEncoder sha256CodeEncoder() {
return new SHA256CodeEncoder();
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.sessionManagement(session -> session.invalidSessionUrl("/account/login")).headers().frameOptions().sameOrigin()
// .. 생략
.addFilterAt(tokenAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);
}
}
변경 후 코드
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
@RequiredArgsConstructor
public class SecurityConfig {
private final SecurityHandler securityHandler;
@Bean
public SHA256CodeEncoder sha256CodeEncoder() {
return new SHA256CodeEncoder();
}
// 변경된 방식은 SecurityFilterChain을 빈으로 등록하는 방식
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http.headers().frameOptions().sameOrigin()
// ... 생략 ...
return http.build(); // Bean으로 등록해서 스프링 컨테이너가 관리할 수 있도록 변경
}
}
728x90
반응형
'web > Spring' 카테고리의 다른 글
[Spring] RedirectAttributes 인터페이스의 addFlashAttribute (0) | 2022.07.12 |
---|---|
[Spring Security] @AuthenticationPrincipal (1) | 2022.07.11 |
[Spring] Spring Security란? (0) | 2022.07.04 |
[Spring] HandlerInterceptor를 활용하여 컨트롤러 중복코드 제거하기 (0) | 2022.06.15 |
[Spring] Builder 기반으로 객체를 안전하게 생성하는 방법 (0) | 2022.06.03 |
Written by ner.o
개발자 네로의 개발 일기,
자바를 좋아합니다 !
댓글 개