Spring Security 3.0 Acl- 调用过程全说明
编程技术  /  houtizong 发布于 3年前   139
1. Spring Security通过继承AbstractSecurityInterceptor的子类进行AOP调用,用Around在要求调用的时候进行处理
2.从ContextHolder分离出SecureContext,并处理错误和null
3.从SecureContext中解析出Authentication
4.判断请求是否是要求安全的
5.如果是要求安全的,将进行安全检查
a.根据AuthenticationManager返回的权限进行request认证
b.根据AccessDecisionManager对request进行认证
c.通过设置在RunAsManager的设定对run-as进行置换
d.将控制权交给明确的子类,子类将实际执行相关过程。但子类执行完毕后它将返回一个InterceptorStatusToken。它将最终决定是重新
调用还是中断AbstractSecurityInterceptor
e.子类将通过afterInvocation(InterceptorStatusToken, Object)重新调用AbstractSecurityInterceptor
f. 如果RunAsManager置换了权限,返回ContextHolder到object它在AuthenticationManager之后存在
g. 如果AfterInvocationManager被定义,启动invocation manager并运行它,允许它替换返回给request的object
6. 控制与object再次返回子类。子类将结果返回给最初的调用者
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接