From 33ae1711a76acc0eafa93ccf40d1ad7c09a35830 Mon Sep 17 00:00:00 2001 From: Evgeniy Cheban Date: Sat, 31 May 2025 05:05:15 +0300 Subject: [PATCH] Set Precedence Order for Spring MVC TargetVisitor Closes gh-17185 Signed-off-by: Evgeniy Cheban --- .../AuthorizationProxyWebConfiguration.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/config/src/main/java/org/springframework/security/config/annotation/method/configuration/AuthorizationProxyWebConfiguration.java b/config/src/main/java/org/springframework/security/config/annotation/method/configuration/AuthorizationProxyWebConfiguration.java index 4af062ef96..d6cdea7279 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/method/configuration/AuthorizationProxyWebConfiguration.java +++ b/config/src/main/java/org/springframework/security/config/annotation/method/configuration/AuthorizationProxyWebConfiguration.java @@ -22,6 +22,7 @@ import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Role; +import org.springframework.core.Ordered; import org.springframework.http.HttpEntity; import org.springframework.http.ResponseEntity; import org.springframework.security.authorization.method.AuthorizationAdvisorProxyFactory; @@ -37,7 +38,9 @@ class AuthorizationProxyWebConfiguration { return new WebTargetVisitor(); } - static class WebTargetVisitor implements AuthorizationAdvisorProxyFactory.TargetVisitor { + static class WebTargetVisitor implements AuthorizationAdvisorProxyFactory.TargetVisitor, Ordered { + + private static final int DEFAULT_ORDER = 100; @Override public Object visit(AuthorizationAdvisorProxyFactory proxyFactory, Object target) { @@ -60,6 +63,11 @@ class AuthorizationProxyWebConfiguration { return null; } + @Override + public int getOrder() { + return DEFAULT_ORDER; + } + } }