|
27 | 27 | import org.jetbrains.annotations.Nullable;
|
28 | 28 |
|
29 | 29 | import org.springframework.aop.Pointcut;
|
30 |
| -import org.springframework.aop.PointcutAdvisor; |
31 | 30 | import org.springframework.aop.framework.AopInfrastructureBean;
|
32 | 31 | import org.springframework.beans.factory.ObjectProvider;
|
33 | 32 | import org.springframework.beans.factory.config.BeanDefinition;
|
|
36 | 35 | import org.springframework.context.annotation.Configuration;
|
37 | 36 | import org.springframework.context.annotation.ImportAware;
|
38 | 37 | import org.springframework.context.annotation.Role;
|
39 |
| -import org.springframework.core.Ordered; |
40 | 38 | import org.springframework.core.type.AnnotationMetadata;
|
41 | 39 | import org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler;
|
42 | 40 | import org.springframework.security.access.expression.method.MethodSecurityExpressionHandler;
|
43 | 41 | import org.springframework.security.access.hierarchicalroles.NullRoleHierarchy;
|
44 | 42 | import org.springframework.security.access.hierarchicalroles.RoleHierarchy;
|
45 | 43 | import org.springframework.security.authorization.AuthorizationEventPublisher;
|
46 | 44 | import org.springframework.security.authorization.AuthorizationManager;
|
| 45 | +import org.springframework.security.authorization.method.AuthorizationAdvisor; |
47 | 46 | import org.springframework.security.authorization.method.AuthorizationManagerAfterMethodInterceptor;
|
48 | 47 | import org.springframework.security.authorization.method.AuthorizationManagerBeforeMethodInterceptor;
|
49 | 48 | import org.springframework.security.authorization.method.PostAuthorizeAuthorizationManager;
|
|
65 | 64 | */
|
66 | 65 | @Configuration(proxyBeanMethods = false)
|
67 | 66 | @Role(BeanDefinition.ROLE_INFRASTRUCTURE)
|
68 |
| -final class PrePostMethodSecurityConfiguration implements ImportAware { |
| 67 | +final class PrePostMethodSecurityConfiguration implements ImportAware, AopInfrastructureBean { |
69 | 68 |
|
70 | 69 | private int interceptorOrderOffset;
|
71 | 70 |
|
@@ -175,8 +174,8 @@ public void setImportMetadata(AnnotationMetadata importMetadata) {
|
175 | 174 | this.interceptorOrderOffset = annotation.offset();
|
176 | 175 | }
|
177 | 176 |
|
178 |
| - private static final class DeferringMethodInterceptor<M extends Ordered & MethodInterceptor & PointcutAdvisor> |
179 |
| - implements Ordered, MethodInterceptor, PointcutAdvisor, AopInfrastructureBean { |
| 177 | + private static final class DeferringMethodInterceptor<M extends AuthorizationAdvisor> |
| 178 | + implements AuthorizationAdvisor { |
180 | 179 |
|
181 | 180 | private final Pointcut pointcut;
|
182 | 181 |
|
|
0 commit comments