Shiro简介
2024-12-14
来源:哗拓教育
Shiro功能
Shiro结构图
- Authentication
身份认证/登录,验证用户是否拥有相应的身份;
- Authorization
授权,即权限认证,验证某个已认证的用户是否拥有某个权限;
- Session Management
会话管理;
- Cryptography
加密,保护数据的安全性;
- Web Support
Web支持,可以非常容易地集成到Web环境;
- Caching:
缓存;
- Testing:
提供测试支持;
- Run As:
允许一个用户假装成另一个用户(如果他们允许)的身份进行访问;
- Remember Me:记住我。
Shiro架构
Shiro架构俯视图
- Subject
主体,代表了当前“用户”,这个用户不一定是具体的人,与当前应用交互的任何东西都是Subject,如网络爬虫,机器人等,是一个抽象概念;所有Subject都绑定到SecurityManager,与Subject的所有交互都会委托给SecurityManager;
- SecurityManager
安全管理器,所有与安全有关的操作都会与SecurityManager交互,且它管理着所有Subject,可以看出他是Shiro的核心,负责与其他组件进行交互。
- Realm
域,Shiro从Realm获取安全数据(如用户、角色、权限),就是说SecurityManager要验证用户身份,那么它需要从Realm得到用户相应的角色/权限来判断用户身份是否合法;也需要从Realm得到用户相应的角色/权限来判断用户是否能进行操作;
Shiro架构详图
显示全文