Spring Security: 다중 HTTP 구성이 작동하지 않음
맞춤형 로그인 페이지 및 보안 URL을 위해 다중 HTTP 구성이 필요한 상황이 발생할 수 있습니다. 다음 시나리오에서 알 수 있듯이 액세스 권한을 부여합니다.
@Configuration @Order(1) public static class ProviderSecurity extends WebSecurityConfigurerAdapter { // Security configuration for admin/* routes } @Configuration @Order(2) public static class ConsumerSecurity extends WebSecurityConfigurerAdapter { // Security configuration for consumer/* routes }
그러나 이 접근 방식은 다음과 같은 결과를 가져올 수 있습니다. 하나의 구성만 활성화되는 불일치. 이 문제를 해결하려면 Spring 보안 참조 가이드를 참조하세요:
@EnableWebSecurity public class MultiHttpSecurityConfig { // Authentication configuration @Configuration @Order(1) public static class ApiWebSecurityConfigurationAdapter extends WebSecurityConfigurerAdapter { // Security configuration for /api/* routes } @Configuration public static class FormLoginWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdapter { // Security configuration for all other routes } }
핵심 사항:
이전 예에서는 / antMatcher(모든 URL과 일치)를 사용한 첫 번째 구성이 두 번째 구성을 재정의하여 두 번째 구성의 URL이 보호되지 않기 때문에 문제가 발생합니다. 첫 번째 구성의 범위를 /admin/으로만 제한하면 두 번째 구성의 URL에 적절한 보안 메커니즘이 적용됩니다.
위 내용은 여러 HTTP 구성을 사용하는 Spring 보안 구성이 작동하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!