mirror of
				https://github.com/spring-projects/spring-security.git
				synced 2025-10-30 22:28:46 +00:00 
			
		
		
		
	Merge branch '6.0.x'
This commit is contained in:
		
						commit
						acf1d34d94
					
				| @ -17,9 +17,9 @@ | ||||
| package org.springframework.security.config.annotation.method.configuration; | ||||
| 
 | ||||
| import io.micrometer.observation.ObservationRegistry; | ||||
| import org.aopalliance.intercept.MethodInterceptor; | ||||
| import org.aopalliance.intercept.MethodInvocation; | ||||
| 
 | ||||
| import org.springframework.aop.Advisor; | ||||
| import org.springframework.beans.factory.ObjectProvider; | ||||
| import org.springframework.beans.factory.config.BeanDefinition; | ||||
| import org.springframework.context.annotation.Bean; | ||||
| @ -46,8 +46,7 @@ final class Jsr250MethodSecurityConfiguration { | ||||
| 
 | ||||
| 	@Bean | ||||
| 	@Role(BeanDefinition.ROLE_INFRASTRUCTURE) | ||||
| 	static MethodInterceptor jsr250AuthorizationMethodInterceptor( | ||||
| 			ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 	Advisor jsr250AuthorizationMethodInterceptor(ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 			ObjectProvider<SecurityContextHolderStrategy> strategyProvider, | ||||
| 			ObjectProvider<ObservationRegistry> registryProvider) { | ||||
| 		Jsr250AuthorizationManager jsr250 = new Jsr250AuthorizationManager(); | ||||
|  | ||||
| @ -1,52 +0,0 @@ | ||||
| /* | ||||
|  * Copyright 2002-2023 the original author or authors. | ||||
|  * | ||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|  * you may not use this file except in compliance with the License. | ||||
|  * You may obtain a copy of the License at | ||||
|  * | ||||
|  *      https://www.apache.org/licenses/LICENSE-2.0 | ||||
|  * | ||||
|  * Unless required by applicable law or agreed to in writing, software | ||||
|  * distributed under the License is distributed on an "AS IS" BASIS, | ||||
|  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||
|  * See the License for the specific language governing permissions and | ||||
|  * limitations under the License. | ||||
|  */ | ||||
| 
 | ||||
| package org.springframework.security.config.annotation.method.configuration; | ||||
| 
 | ||||
| import org.springframework.aop.Advisor; | ||||
| import org.springframework.beans.factory.config.BeanDefinition; | ||||
| import org.springframework.beans.factory.support.BeanDefinitionRegistry; | ||||
| import org.springframework.beans.factory.support.RootBeanDefinition; | ||||
| import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; | ||||
| import org.springframework.core.type.AnnotationMetadata; | ||||
| 
 | ||||
| class MethodSecurityAdvisorRegistrar implements ImportBeanDefinitionRegistrar { | ||||
| 
 | ||||
| 	@Override | ||||
| 	public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) { | ||||
| 		registerAsAdvisor("preFilterAuthorization", registry); | ||||
| 		registerAsAdvisor("preAuthorizeAuthorization", registry); | ||||
| 		registerAsAdvisor("postFilterAuthorization", registry); | ||||
| 		registerAsAdvisor("postAuthorizeAuthorization", registry); | ||||
| 		registerAsAdvisor("securedAuthorization", registry); | ||||
| 		registerAsAdvisor("jsr250Authorization", registry); | ||||
| 	} | ||||
| 
 | ||||
| 	private void registerAsAdvisor(String prefix, BeanDefinitionRegistry registry) { | ||||
| 		String interceptorName = prefix + "MethodInterceptor"; | ||||
| 		if (!registry.containsBeanDefinition(interceptorName)) { | ||||
| 			return; | ||||
| 		} | ||||
| 		BeanDefinition definition = registry.getBeanDefinition(interceptorName); | ||||
| 		if (!(definition instanceof RootBeanDefinition)) { | ||||
| 			return; | ||||
| 		} | ||||
| 		RootBeanDefinition advisor = new RootBeanDefinition((RootBeanDefinition) definition); | ||||
| 		advisor.setTargetType(Advisor.class); | ||||
| 		registry.registerBeanDefinition(prefix + "Advisor", advisor); | ||||
| 	} | ||||
| 
 | ||||
| } | ||||
| @ -1,5 +1,5 @@ | ||||
| /* | ||||
|  * Copyright 2002-2023 the original author or authors. | ||||
|  * Copyright 2002-2022 the original author or authors. | ||||
|  * | ||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|  * you may not use this file except in compliance with the License. | ||||
| @ -60,8 +60,7 @@ final class MethodSecuritySelector implements ImportSelector { | ||||
| 
 | ||||
| 	private static final class AutoProxyRegistrarSelector extends AdviceModeImportSelector<EnableMethodSecurity> { | ||||
| 
 | ||||
| 		private static final String[] IMPORTS = new String[] { AutoProxyRegistrar.class.getName(), | ||||
| 				MethodSecurityAdvisorRegistrar.class.getName() }; | ||||
| 		private static final String[] IMPORTS = new String[] { AutoProxyRegistrar.class.getName() }; | ||||
| 
 | ||||
| 		private static final String[] ASPECTJ_IMPORTS = new String[] { | ||||
| 				MethodSecurityAspectJAutoProxyRegistrar.class.getName() }; | ||||
|  | ||||
| @ -17,8 +17,8 @@ | ||||
| package org.springframework.security.config.annotation.method.configuration; | ||||
| 
 | ||||
| import io.micrometer.observation.ObservationRegistry; | ||||
| import org.aopalliance.intercept.MethodInterceptor; | ||||
| 
 | ||||
| import org.springframework.aop.Advisor; | ||||
| import org.springframework.beans.factory.ObjectProvider; | ||||
| import org.springframework.beans.factory.config.BeanDefinition; | ||||
| import org.springframework.context.ApplicationContext; | ||||
| @ -52,8 +52,7 @@ final class PrePostMethodSecurityConfiguration { | ||||
| 
 | ||||
| 	@Bean | ||||
| 	@Role(BeanDefinition.ROLE_INFRASTRUCTURE) | ||||
| 	static MethodInterceptor preFilterAuthorizationMethodInterceptor( | ||||
| 			ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 	Advisor preFilterAuthorizationMethodInterceptor(ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 			ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider, | ||||
| 			ObjectProvider<SecurityContextHolderStrategy> strategyProvider, ApplicationContext context) { | ||||
| 		PreFilterAuthorizationMethodInterceptor preFilter = new PreFilterAuthorizationMethodInterceptor(); | ||||
| @ -65,8 +64,7 @@ final class PrePostMethodSecurityConfiguration { | ||||
| 
 | ||||
| 	@Bean | ||||
| 	@Role(BeanDefinition.ROLE_INFRASTRUCTURE) | ||||
| 	static MethodInterceptor preAuthorizeAuthorizationMethodInterceptor( | ||||
| 			ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 	Advisor preAuthorizeAuthorizationMethodInterceptor(ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 			ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider, | ||||
| 			ObjectProvider<SecurityContextHolderStrategy> strategyProvider, | ||||
| 			ObjectProvider<AuthorizationEventPublisher> eventPublisherProvider, | ||||
| @ -83,8 +81,7 @@ final class PrePostMethodSecurityConfiguration { | ||||
| 
 | ||||
| 	@Bean | ||||
| 	@Role(BeanDefinition.ROLE_INFRASTRUCTURE) | ||||
| 	static MethodInterceptor postAuthorizeAuthorizationMethodInterceptor( | ||||
| 			ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 	Advisor postAuthorizeAuthorizationMethodInterceptor(ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 			ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider, | ||||
| 			ObjectProvider<SecurityContextHolderStrategy> strategyProvider, | ||||
| 			ObjectProvider<AuthorizationEventPublisher> eventPublisherProvider, | ||||
| @ -101,8 +98,7 @@ final class PrePostMethodSecurityConfiguration { | ||||
| 
 | ||||
| 	@Bean | ||||
| 	@Role(BeanDefinition.ROLE_INFRASTRUCTURE) | ||||
| 	static MethodInterceptor postFilterAuthorizationMethodInterceptor( | ||||
| 			ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 	Advisor postFilterAuthorizationMethodInterceptor(ObjectProvider<GrantedAuthorityDefaults> defaultsProvider, | ||||
| 			ObjectProvider<MethodSecurityExpressionHandler> expressionHandlerProvider, | ||||
| 			ObjectProvider<SecurityContextHolderStrategy> strategyProvider, ApplicationContext context) { | ||||
| 		PostFilterAuthorizationMethodInterceptor postFilter = new PostFilterAuthorizationMethodInterceptor(); | ||||
|  | ||||
| @ -17,9 +17,9 @@ | ||||
| package org.springframework.security.config.annotation.method.configuration; | ||||
| 
 | ||||
| import io.micrometer.observation.ObservationRegistry; | ||||
| import org.aopalliance.intercept.MethodInterceptor; | ||||
| import org.aopalliance.intercept.MethodInvocation; | ||||
| 
 | ||||
| import org.springframework.aop.Advisor; | ||||
| import org.springframework.beans.factory.ObjectProvider; | ||||
| import org.springframework.beans.factory.config.BeanDefinition; | ||||
| import org.springframework.context.annotation.Bean; | ||||
| @ -46,8 +46,7 @@ final class SecuredMethodSecurityConfiguration { | ||||
| 
 | ||||
| 	@Bean | ||||
| 	@Role(BeanDefinition.ROLE_INFRASTRUCTURE) | ||||
| 	static MethodInterceptor securedAuthorizationMethodInterceptor( | ||||
| 			ObjectProvider<SecurityContextHolderStrategy> strategyProvider, | ||||
| 	Advisor securedAuthorizationMethodInterceptor(ObjectProvider<SecurityContextHolderStrategy> strategyProvider, | ||||
| 			ObjectProvider<ObservationRegistry> registryProvider) { | ||||
| 		SecuredAuthorizationManager secured = new SecuredAuthorizationManager(); | ||||
| 		SecurityContextHolderStrategy strategy = strategyProvider | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user