学习shiro(二) 认识shiro

1.shiro是什么

Apache Shrio是java的一个安全框架。具有:认证、授权、加密、会话管理、与Web集成、缓存等功能

2.shiro的功能

shiro功能图

3.shiro的结构

3.1 shiro结构图

shiro结构图

3.2 shiro结构说明
  1. Subject:主体。任意与系统交互的用户:普通用户、系统、证书、指纹、声音等等。
  2. Security Manager:相当于SpringMVC中的DispatcherServlet或者Struts2中的FilterDispatcher。是shiro的心脏,所有具体交互都通过Security Manager 进行控制,它管理所有的Subject,且负责认证、授权、会话、缓存的管理。
  3. Authenticator:认证器。如果shiro默认的不好,可以自定义实现。
  4. Authorizer:授权器或者访问控制器。用来决定主体是否拥有权限进行相应的操作。
  5. Realm:可以有一个或者多个Realm,可以认为是安全实体数据源,即用于获取安全实体;可以是jdbc实现,也可以是LDAP实现,或者内存实现等等。由于shiro不知道你的用户/权限存储在哪及以何种格式存储,所以一般我们都需要实现自己的Realm。
  6. Session Manager:会话管理。
  7. Session Dao:如果想把session保存到数据库,我们可以使用SessionDao。比如将Session存放到Redis中。另外SessionDao可以使用Cache进行缓存,以提高性能。
  8. Cache Manager:缓存管理器。来管理如用户、角色、权限等数据的缓存。因为这些数据很少发生改变,放到缓存到可以提高访问性能。
  9. Cryptography:密码模块。shiro提供了一些常见的加密组件用于如密码加密、解密等。
3.3 shiro的执行图

shiro的执行流程图

学习的笔记,如果有错误,请指出,谢谢。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值