1. 개요
이 예제에서는 주어진 프로필에 대해 Spring Security를 비활성화 하는 방법을 살펴볼 것 입니다.
2. 구성
먼저 모든 요청을 허용하는 Security 구성을 정의 해 보겠습니다.
Spring @ Configuration 에서 WebSecurityConfigurerAdapter 를 확장 하고 모든 경로에 대한 요청을 무시 하여 이를 달성 할 수 있습니다 .
@Configuration
public class ApplicationSecurity extends WebSecurityConfigurerAdapter {
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/**");
}
}
이렇게하면 인증뿐 아니라 XSS와 같은 Security 보호 도 차단됩니다 .
3. 프로필 지정
이제 주어진 프로필에 대해서만이 구성을 활성화하려고합니다.
Security을 원하지 않는 단위 테스트 스위트가 있다고 가정 해 보겠습니다. 이 테스트 스위트가 "test"라는 프로필로 실행되는 경우 구성에 @Profile 어노테이션을 추가 할 수 있습니다 .
@Profile("test")
@Configuration
public class ApplicationSecurity extends WebSecurityConfigurerAdapter {
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/**");
}
}
결과적으로 우리의 테스트 환경은 우리가 원하지 않을 수도 있습니다. 또는 Security을 유지하고 Spring Security의 테스트 지원을 사용할 수 있습니다 .
4. 결론
이 예제에서는 특정 프로필에 대해 Spring Security를 비활성화하는 방법을 설명했습니다.