Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 이분 매칭
- 달팽이
- 백트래킹
- spring boot
- 주울
- 다익스트라
- Zuul
- Spring Cloud Config
- Java
- 트리
- BFS
- 플로이드 와샬
- Gradle
- ZuulFilter
- Logback
- 완전 탐색
- 서비스 디스커버리
- dp
- 스택
- docker-compose
- 도커
- 비트마스킹
- 스프링 시큐리티
- 메모이제이션
- 구간 트리
- 구현
- 유레카
- 이분 탐색
- 게이트웨이
- spring cloud
Archives
- Today
- Total
Hello, Freakin world!
스프링 시큐리티 CORS 해결하기 본문
프로젝트에서 스프링 시큐리티를 사용하는 경우,
WebSecurityConfigurerAdapter 상속 클래스에서 CORS 설정을 추가해야 합니다.
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
...
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.cors().configurationSource(corsConfigurationSource()).and()
.authorizeRequests()
.antMatchers("/login/**", "/hello/**").permitAll()
.antMatchers(OPTIONS,"/**").permitAll()
.antMatchers(POST, MEMBER_SERVICE+"/member", MEMBER_SERVICE+"/authentication").permitAll()
.antMatchers(GET,MEMBER_SERVICE+"/members").hasRole(ADMIN)
.antMatchers(GET, MEMBER_SERVICE+"/members/{id}").hasRole(USER)
// .anyRequest().denyAll()
.and()
.formLogin()
.defaultSuccessUrl("http://localhost:8080/");
}
@Bean
CorsConfigurationSource corsConfigurationSource() {
CorsConfiguration configuration = new CorsConfiguration();
configuration.addAllowedOrigin("http://localhost:8080");
configuration.setAllowedMethods(Arrays.asList("GET","POST", "OPTIONS", "PUT","DELETE"));
configuration.setAllowedHeaders(Arrays.asList("*"));
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", configuration);
return source;
}
}
위처럼 CorsConfigurationSource 타입의 빈에 허용할 Origin, Method, Header를 설정해서 생성해 위 코드처럼 넣어주면 됩니다.
'Spring boot > Security' 카테고리의 다른 글
스프링 시큐리티, 스프링 MVC 통합 테스트 작성하기 (0) | 2021.04.18 |
---|---|
[스프링 시큐리티] Username/Password 인증 구현하기 (0) | 2021.04.17 |
DelegatingPasswordEncoder 단위테스트 케이스 (0) | 2021.04.11 |
Comments