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];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客