本文整理汇总了Java中org.springframework.security.access.expression.method.ExpressionBasedAnnotationAttributeFactory类的典型用法代码示例。如果您正苦于以下问题:Java ExpressionBasedAnnotationAttributeFactory类的具体用法?Java ExpressionBasedAnnotationAttributeFactory怎么用?Java ExpressionBasedAnnotationAttributeFactory使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ExpressionBasedAnnotationAttributeFactory类属于org.springframework.security.access.expression.method包,在下文中一共展示了ExpressionBasedAnnotationAttributeFactory类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isAccessGranted
import org.springframework.security.access.expression.method.ExpressionBasedAnnotationAttributeFactory; //导入依赖的package包/类
@Override
public boolean isAccessGranted(String beanName, UI ui) {
final PreAuthorize viewSecured = applicationContext.findAnnotationOnBean(beanName, PreAuthorize.class);
if (viewSecured != null) {
final Class<?> targetClass = AopUtils.getTargetClass(applicationContext.getBean(beanName));
final Method method = ClassUtils.getMethod(AopUtils.getTargetClass(applicationContext.getBean(beanName)), "enter", com.vaadin.navigator.ViewChangeListener.ViewChangeEvent.class);
final MethodInvocation methodInvocation = MethodInvocationUtils.createFromClass(targetClass, method.getName());
final Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
final AccessDecisionManager accessDecisionManager = applicationContext.getBean(AccessDecisionManager.class);
final ExpressionBasedAnnotationAttributeFactory attributeFactory = new ExpressionBasedAnnotationAttributeFactory(new DefaultMethodSecurityExpressionHandler());
Collection<ConfigAttribute> atributi = new ArrayList<ConfigAttribute>();
atributi.add(attributeFactory.createPreInvocationAttribute(null, null, viewSecured.value()));
try {
accessDecisionManager.decide(authentication, methodInvocation, atributi);
return true;
} catch (AccessDeniedException | InsufficientAuthenticationException ex) {
return false;
}
} else {
return true;
}
}
开发者ID:markoradinovic,项目名称:Vaadin4Spring-MVP-Sample-SpringSecurity,代码行数:31,代码来源:PreAuthorizeSpringViewProviderAccessDelegate.java
示例2: customMethodSecurityMetadataSource
import org.springframework.security.access.expression.method.ExpressionBasedAnnotationAttributeFactory; //导入依赖的package包/类
@Override
protected MethodSecurityMetadataSource customMethodSecurityMetadataSource() {
ExpressionBasedAnnotationAttributeFactory attributeFactory =
new ExpressionBasedAnnotationAttributeFactory(getExpressionHandler());
return new HasAuthorityAnnotationSecurityMetadataSource(attributeFactory);
}