Spring/공부
책[스프링부트와 AWS로 혼자 구현하는 웹 서비스] SecurityConfig 작성시 WebSecurityConfigurerAdapter 문제
synclair
2023. 7. 14. 11:31
WebSecurityConfigurerAdapter 는 지금은 deprecated가 되었기 때문에 더 이상 지원 안한다.
p.180 페이지의 시큐리티 설정 코드를 약간 변경해보았다.
package com.tony.springboot.book.config.auth; // 이건 자기 패키지 상황에 맞게 바꾸세요
import com.tony.springboot.book.domain.user.Role;
import lombok.RequiredArgsConstructor;
import org.springframework.context.annotation.Bean;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.web.SecurityFilterChain;
@RequiredArgsConstructor
@EnableWebSecurity
public class SecurityConfig {
private final CustomOAuth2UserService customOAuth2UserService;
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http.csrf().disable()
.headers().frameOptions().disable()
.and()
.authorizeRequests()
.antMatchers("/", "/css/**", "/images/**", "/js/**", "/h2-console/**").permitAll()
.antMatchers("/api/v1/**").hasRole(Role.USER.name())
.anyRequest().authenticated()
.and()
.logout()
.logoutSuccessUrl("/")
.and()
.oauth2Login()
.userInfoEndpoint()
.userService(customOAuth2UserService);
return http.build();
}
}