Shiro<简介+核心概念>

image.png

看博主系列

以下是学习笔记:

image.png

Authentication:身份认证,验证用户是不是已经拥有相应的身份;
Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限:也就是判断用户能不能做这个事情;
Session Manager:会话管理,即用户登录一次就是一次会话,在没有退出之前,他所有会话的信息都保存会话中;
Cryptography:加密,保护数据的安全性;
Web Support:Web支持,可以很容易集成到web环境;
Concurrency;shiro支持多线程应用的并发验证,即在一个线程中开启另一个线程,能把去权限自动传播过去;
Testing: 提供测试支持;
Run As: 允许一个用户假装另一个用户的身份访问;
Remember Me: 记住我,即一次登录之后,下次登陆再来的话不用在登陆;

shiro不会去维护用户,维护权限;这些需要我们自己去设计/提供;然后通过相应的接口注入给shiro

image.png

直接与代码交互的对象是Subject,也就是说Shiro对外API的核心是Subject
Subject: 主体,代表当前“用户”,所有的Subject都绑定到SecurityManager,都委托给SecurityManager, SUbject相当于门面,而SecurityManager才是实际的执行者;
SecurityManager:我是安全管理器,所有有安全相关的操作,都会交给我来处理,我管理着所有的Subject,我是核心,我负责与其他组件进行交互,你也可以你把我比作springmvc里面的前端控制器,
Realm: 我叫域,Shiro要从我这里获取安全数据(用户,角色,权限),也就是说SecurityManager要验证身份,需要从我这里获取相应用户的身份,也需要从我这里获取权限,可以把我 看作安全数据源;

从上面也可以看出,Shiro不提供维护用户和权限,而是用过Realm让开发人员自己注入;

image.png

Subject: 主体
SecurityManager:心脏
Authentication:认证器
Authorizer: 授权器
Realm:可以有一个或者多个,安全的实体数据源
SessionManager: Shiro并不仅仅可以用在Web环境,也可以用在如普通的JavaSE环境、EJB等环境
SessionDao:
CacheManager:缓存控制器 ,放到 缓存中可以提高访问性能;
Cryptography: 密码模块;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 前言 Spring boot 是什么,网上的很多介绍,这里博客就不多介绍了。如果不明白Spring boot是什么...
    xuezhijian阅读 17,994评论 13 39
  • 1.简介 Apache Shiro是Java的一个安全框架。功能强大,使用简单的Java安全框架,它为开发人员提供...
    H_Man阅读 8,363评论 4 47
  • 文章转载自:http://blog.csdn.net/w1196726224/article/details/53...
    wangzaiplus阅读 8,691评论 0 3
  • Apache Shiro Apache Shiro 是一个强大而灵活的开源安全框架,它干净利落地处理身份认证,授权...
    罗志贇阅读 8,478评论 1 49
  • Shiro(代码) 1.1 简介 Apache Shiro是Java的一个安全框架。目前,使用Apache Shi...
    ZZS_简阅读 3,345评论 0 0

友情链接更多精彩内容