mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-06-25 13:32:30 +00:00
SEC-2274: Add ApplicationContext as HttpSecurity shared object
This commit is contained in:
parent
e8788f2657
commit
379cbd2a8b
@ -151,6 +151,7 @@ public abstract class WebSecurityConfigurerAdapter implements SecurityConfigurer
|
|||||||
authenticationBuilder.parentAuthenticationManager(authenticationManager);
|
authenticationBuilder.parentAuthenticationManager(authenticationManager);
|
||||||
http = new HttpSecurity(objectPostProcessor,authenticationBuilder, parentAuthenticationBuilder.getSharedObjects());
|
http = new HttpSecurity(objectPostProcessor,authenticationBuilder, parentAuthenticationBuilder.getSharedObjects());
|
||||||
http.setSharedObject(UserDetailsService.class, userDetailsService());
|
http.setSharedObject(UserDetailsService.class, userDetailsService());
|
||||||
|
http.setSharedObject(ApplicationContext.class, context);
|
||||||
http.setSharedObject(ContentNegotiationStrategy.class, contentNegotiationStrategy);
|
http.setSharedObject(ContentNegotiationStrategy.class, contentNegotiationStrategy);
|
||||||
if(!disableDefaults) {
|
if(!disableDefaults) {
|
||||||
http
|
http
|
||||||
|
@ -243,6 +243,19 @@ class WebSecurityConfigurerAdapterTests extends BaseSpringSpec {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def "SEC-2274: WebSecurityConfigurer adds ApplicationContext as a shared object"() {
|
||||||
|
when:
|
||||||
|
loadConfig(ApplicationContextSharedObjectConfig)
|
||||||
|
then:
|
||||||
|
context.getBean(ApplicationContextSharedObjectConfig).http.getSharedObject(ApplicationContext) == context
|
||||||
|
}
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
@EnableWebSecurity
|
||||||
|
static class ApplicationContextSharedObjectConfig extends WebSecurityConfigurerAdapter {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
static class MyFilter extends OncePerRequestFilter {
|
static class MyFilter extends OncePerRequestFilter {
|
||||||
private UserDetailsService userDetailsService
|
private UserDetailsService userDetailsService
|
||||||
public MyFilter(UserDetailsService uds) {
|
public MyFilter(UserDetailsService uds) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user