Skip to content

Commit 5aacd0c

Browse files
committed
Expose bean setters in @configuration used by @EnableWebFluxSecurity
Fixes gh-6624
1 parent 2c136f7 commit 5aacd0c

File tree

2 files changed

+30
-6
lines changed

2 files changed

+30
-6
lines changed

config/src/main/java/org/springframework/security/config/annotation/web/reactive/ServerHttpSecurityConfiguration.java

+25-5
Original file line numberDiff line numberDiff line change
@@ -47,24 +47,44 @@ class ServerHttpSecurityConfiguration implements WebFluxConfigurer {
4747
private static final String BEAN_NAME_PREFIX = "org.springframework.security.config.annotation.web.reactive.HttpSecurityConfiguration.";
4848
private static final String HTTPSECURITY_BEAN_NAME = BEAN_NAME_PREFIX + "httpSecurity";
4949

50-
@Autowired(required = false)
5150
private ReactiveAdapterRegistry adapterRegistry = new ReactiveAdapterRegistry();
5251

53-
@Autowired(required = false)
5452
private ReactiveAuthenticationManager authenticationManager;
5553

56-
@Autowired(required = false)
5754
private ReactiveUserDetailsService reactiveUserDetailsService;
5855

59-
@Autowired(required = false)
6056
private PasswordEncoder passwordEncoder;
6157

62-
@Autowired(required = false)
6358
private ReactiveUserDetailsPasswordService userDetailsPasswordService;
6459

6560
@Autowired(required = false)
6661
private BeanFactory beanFactory;
6762

63+
@Autowired(required = false)
64+
void setAdapterRegistry(ReactiveAdapterRegistry adapterRegistry) {
65+
this.adapterRegistry = adapterRegistry;
66+
}
67+
68+
@Autowired(required = false)
69+
void setAuthenticationManager(ReactiveAuthenticationManager authenticationManager) {
70+
this.authenticationManager = authenticationManager;
71+
}
72+
73+
@Autowired(required = false)
74+
void setReactiveUserDetailsService(ReactiveUserDetailsService reactiveUserDetailsService) {
75+
this.reactiveUserDetailsService = reactiveUserDetailsService;
76+
}
77+
78+
@Autowired(required = false)
79+
void setPasswordEncoder(PasswordEncoder passwordEncoder) {
80+
this.passwordEncoder = passwordEncoder;
81+
}
82+
83+
@Autowired(required = false)
84+
void setUserDetailsPasswordService(ReactiveUserDetailsPasswordService userDetailsPasswordService) {
85+
this.userDetailsPasswordService = userDetailsPasswordService;
86+
}
87+
6888
@Override
6989
public void configureArgumentResolvers(ArgumentResolverConfigurer configurer) {
7090
configurer.addCustomResolver(authenticationPrincipalArgumentResolver());

config/src/main/java/org/springframework/security/config/annotation/web/reactive/WebFluxSecurityConfiguration.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,16 @@ class WebFluxSecurityConfiguration {
5151
private static final boolean isOAuth2Present = ClassUtils.isPresent(
5252
REACTIVE_CLIENT_REGISTRATION_REPOSITORY_CLASSNAME, WebFluxSecurityConfiguration.class.getClassLoader());
5353

54-
@Autowired(required = false)
5554
private List<SecurityWebFilterChain> securityWebFilterChains;
5655

5756
@Autowired
5857
ApplicationContext context;
5958

59+
@Autowired(required = false)
60+
void setSecurityWebFilterChains(List<SecurityWebFilterChain> securityWebFilterChains) {
61+
this.securityWebFilterChains = securityWebFilterChains;
62+
}
63+
6064
@Bean(SPRING_SECURITY_WEBFILTERCHAINFILTER_BEAN_NAME)
6165
@Order(value = WEB_FILTER_CHAIN_FILTER_ORDER)
6266
public WebFilterChainProxy springSecurityWebFilterChainFilter() {

0 commit comments

Comments
 (0)