스프링 시큐리티에서 CORS 설정

Hyun·2024년 2월 3일
0

Spring

목록 보기
35/38
post-thumbnail

스프링 시큐리티를 사용할 경우에, 스프링 시큐리티가 가장 앞단에서 사용자 요청을 처리하기 때문에 스프링 시큐리티에서 CORS 를 활성화시켜주어야 한다.

예시

@Configuration
@EnableWebSecurity
public class SecurityConfig {

    ...

    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {

        //csrf disable

        http
                .cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() {
                    @Override
                    public CorsConfiguration getCorsConfiguration(HttpServletRequest request) {
                        CorsConfiguration config = new CorsConfiguration();
                        config.setAllowedOrigins(Collections.singletonList("http://localhost:3000"));
                        config.setAllowedMethods(Collections.singletonList("*"));
                        config.setAllowCredentials(true);
                        config.setAllowedHeaders(Collections.singletonList("*"));
                        config.setMaxAge(3600L); //1시간
                        return config;
                    }
                }));
       ...

        return http.build();

    }
}
profile
better than yesterday

0개의 댓글