FilterSecurityInterceptor执行详情

一、FilterSecurityInterceptor
invoke方法中调用InterceptorStatusToken的beforeInvocation(Object object) 方法。

  1. beforeInvocation(Object object) 方法中获取访问路径需要的权限:
Collection<ConfigAttribute> attributes = this.obtainSecurityMetadataSource()
				.getAttributes(object);

this.obtainSecurityMetadataSource() 会得到DefaultFilterInvocationSecurityMetadataSource实例执行getAttributes(object) 方法,当路径都不匹配时返回WebExpressionConfigAttribute(authenticated)。
FilterSecurityInterceptor执行详情
2. beforeInvocation(Object object) 方法中验证权限是否放行资源:

try {
	this.accessDecisionManager.decide(authenticated, object, attributes);
}

this.accessDecisionManager取得AffirmativeBased实例执行decide(authenticated, object, attributes) 方法。

上一篇:阿里云云计算ACP专业认证考试


下一篇:阿里云ACP云计算认证分享--从零基础到拿证15天