From e7cb0be6d83a349b03dcad89287ddbe41f88f443 Mon Sep 17 00:00:00 2001 From: Stephane Nicoll Date: Sun, 29 Oct 2017 16:52:11 +0100 Subject: [PATCH] Adapt to Spring Security change This commit updates `WebFluxSecurityConfiguration` to look for a `WebFilterChainProxy` rather than the default configuration that `@EnableWebFluxSecurity` triggers. The latter is now package private. --- .../security/reactive/WebFluxSecurityConfiguration.java | 5 +++-- .../reactive/ReactiveSecurityAutoConfigurationTests.java | 4 +--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/security/reactive/WebFluxSecurityConfiguration.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/security/reactive/WebFluxSecurityConfiguration.java index 55391d4e8a2..47a96c49a9d 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/security/reactive/WebFluxSecurityConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/security/reactive/WebFluxSecurityConfiguration.java @@ -20,6 +20,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication; import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity; +import org.springframework.security.web.server.WebFilterChainProxy; /** * Switches on {@link EnableWebFluxSecurity} for a reactive web application if this @@ -28,8 +29,8 @@ import org.springframework.security.config.annotation.web.reactive.EnableWebFlux * @author Madhura Bhave * @since 2.0.0 */ -@ConditionalOnClass(EnableWebFluxSecurity.class) -@ConditionalOnMissingBean(org.springframework.security.config.annotation.web.reactive.WebFluxSecurityConfiguration.class) +@ConditionalOnClass({ EnableWebFluxSecurity.class, WebFilterChainProxy.class }) +@ConditionalOnMissingBean(WebFilterChainProxy.class) @ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.REACTIVE) @EnableWebFluxSecurity public class WebFluxSecurityConfiguration { diff --git a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/reactive/ReactiveSecurityAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/reactive/ReactiveSecurityAutoConfigurationTests.java index 492d74c5000..a3e71e11d00 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/reactive/ReactiveSecurityAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/security/reactive/ReactiveSecurityAutoConfigurationTests.java @@ -29,8 +29,6 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.server.reactive.HttpHandler; import org.springframework.security.authentication.ReactiveAuthenticationManager; -import org.springframework.security.config.annotation.web.reactive.ServerHttpSecurityConfiguration; -import org.springframework.security.config.annotation.web.reactive.WebFluxSecurityConfiguration; import org.springframework.security.core.Authentication; import org.springframework.security.core.userdetails.MapReactiveUserDetailsService; import org.springframework.security.core.userdetails.ReactiveUserDetailsService; @@ -58,7 +56,7 @@ public class ReactiveSecurityAutoConfigurationTests { .withConfiguration( AutoConfigurations.of(ReactiveSecurityAutoConfiguration.class)) .run((context) -> { - assertThat(context).getBean(ServerHttpSecurityConfiguration.class) + assertThat(context).getBean(WebFilterChainProxy.class) .isNotNull(); assertThat(context).getBean(WebFluxSecurityConfiguration.class) .isNotNull();