From 9876b66f990c27a02d0f4edcfd1b0238b0d1dbf0 Mon Sep 17 00:00:00 2001 From: John Lin Date: Fri, 16 Aug 2019 10:25:47 -0700 Subject: [PATCH] Polish GlobalMethodSecurityConfiguration Initialize ExpressionBasedPreInvocationAdvice for PreInvocationAuthorizationAdviceVoter only when needed. --- .../configuration/GlobalMethodSecurityConfiguration.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/config/src/main/java/org/springframework/security/config/annotation/method/configuration/GlobalMethodSecurityConfiguration.java b/config/src/main/java/org/springframework/security/config/annotation/method/configuration/GlobalMethodSecurityConfiguration.java index 91aa83b20b..e18e23a27d 100644 --- a/config/src/main/java/org/springframework/security/config/annotation/method/configuration/GlobalMethodSecurityConfiguration.java +++ b/config/src/main/java/org/springframework/security/config/annotation/method/configuration/GlobalMethodSecurityConfiguration.java @@ -242,9 +242,10 @@ public class GlobalMethodSecurityConfiguration */ protected AccessDecisionManager accessDecisionManager() { List> decisionVoters = new ArrayList<>(); - ExpressionBasedPreInvocationAdvice expressionAdvice = new ExpressionBasedPreInvocationAdvice(); - expressionAdvice.setExpressionHandler(getExpressionHandler()); if (prePostEnabled()) { + ExpressionBasedPreInvocationAdvice expressionAdvice = + new ExpressionBasedPreInvocationAdvice(); + expressionAdvice.setExpressionHandler(getExpressionHandler()); decisionVoters .add(new PreInvocationAuthorizationAdviceVoter(expressionAdvice)); }