1 package org.springframework.security.oauth2.provider.expression;
2
3 import org.aopalliance.intercept.MethodInvocation;
4 import org.springframework.expression.ExpressionParser;
5 import org.springframework.expression.spel.support.StandardEvaluationContext;
6 import org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler;
7 import org.springframework.security.core.Authentication;
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 public class OAuth2MethodSecurityExpressionHandler extends DefaultMethodSecurityExpressionHandler {
25
26 public OAuth2MethodSecurityExpressionHandler() {
27 setExpressionParser(new OAuth2ExpressionParser(getExpressionParser()));
28 }
29
30 @Override
31 public StandardEvaluationContext createEvaluationContextInternal(Authentication authentication, MethodInvocation mi) {
32 StandardEvaluationContext ec = super.createEvaluationContextInternal(authentication, mi);
33 ec.setVariable("oauth2", new OAuth2SecurityExpressionMethods(authentication));
34 return ec;
35 }
36 }