- 官方文档:https://shiro.apache.org/architecture.html
1.Subject(主体)
把用户或者程序称为主体(如用户,第三方服务,cron作业),主体去访问系统或者资源
2.SecurityManager(安全管理器)
Subject的认证和授权都在安全管理器下进行
3.Authenticator(认证器)
主要负责Subject的认证
4.Authorizer(授权器)
主要负责Subject的授权, 控制subject拥有的角色或者权限
5.SessionManager(会话管理器)
创建和管理用户会话生命周期,从而为所有环境中的用户提供健壮的会话体验。这是安全框架世界中的一个独特特性——Shiro能够在任何环境中本地管理用户会话,即使没有可用的Web/Servlet或EJB容器。默认情况下,Shiro将使用现有的会话机制(例如Servlet容器),但如果没有,例如在一个独立的应用程序或非web环境中,它将使用其内置的企业会话管理来提供相同的进程
6.Cache Manager(缓存管理器)
认证或授权信息,通过缓存进行管理,提高性能
7.Cryptography(加解密)
Shiro的加密包包含易于使用和理解的加密密码,通过哈希和不同的编解码器实现。这个包中的所有类都经过精心设计,非常易于使用和理解。Shiro的加密api简化了复杂的Java机制,使加密技术易于为普通人使用。
8.Realms(数据域)
Realms充当Shiro和应用程序安全数据之间的“桥梁”或“连接器”,类似于jdbc连接数据库; 通过realms可以获取认证授权相关信息