2
0
Эх сурвалжийг харах

Polish SecurityContextHolderStrategy XML Configuration for Defaults

Issue gh-11061
Josh Cummings 3 жил өмнө
parent
commit
97cb2a7d91

+ 9 - 0
config/src/main/java/org/springframework/security/config/http/HttpConfigurationBuilder.java

@@ -600,6 +600,7 @@ class HttpConfigurationBuilder {
 			this.servApiFilter = GrantedAuthorityDefaultsParserUtils.registerWithDefaultRolePrefix(this.pc,
 					SecurityContextHolderAwareRequestFilterBeanFactory.class);
 			this.servApiFilter.getPropertyValues().add("authenticationManager", authenticationManager);
+			this.servApiFilter.getPropertyValues().add("securityContextHolderStrategy", this.holderStrategyRef);
 		}
 	}
 
@@ -902,12 +903,20 @@ class HttpConfigurationBuilder {
 
 		private SecurityContextHolderAwareRequestFilter filter = new SecurityContextHolderAwareRequestFilter();
 
+		private SecurityContextHolderStrategy securityContextHolderStrategy = SecurityContextHolder
+				.getContextHolderStrategy();
+
 		@Override
 		public SecurityContextHolderAwareRequestFilter getBean() {
+			this.filter.setSecurityContextHolderStrategy(this.securityContextHolderStrategy);
 			this.filter.setRolePrefix(this.rolePrefix);
 			return this.filter;
 		}
 
+		void setSecurityContextHolderStrategy(SecurityContextHolderStrategy securityContextHolderStrategy) {
+			this.securityContextHolderStrategy = securityContextHolderStrategy;
+		}
+
 	}
 
 	static class SecurityContextHolderStrategyFactory implements FactoryBean<SecurityContextHolderStrategy> {