Apache Shiro 框架简介
作者:mrr 发布时间:2022-04-18 02:27:58
一、什么是Shiro
Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能:
认证 - 用户身份识别,常被称为用户“登录”;
授权 - 访问控制;
密码加密 - 保护或隐藏数据防止被 * ;
会话管理 - 每用户相关的时间敏感的状态。
对于任何一个应用程序,Shiro都可以提供全面的安全管理服务。并且相对于其他安全框架,Shiro要简单的多。
二、Shiro的架构介绍
首先,来了解一下Shiro的三个核心组件:Subject, SecurityManager 和 Realms. 如下图:
Subject:即“当前操作用户”。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。它仅仅意味着“当前跟软件交互的东西”。但考虑到大多数目的和用途,你可以把它认为是Shiro的“用户”概念。
Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。
SecurityManager:它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务。
Realm: Realm充当了Shiro与应用安全数据间的“桥梁”或者“连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息。
从这个意义上讲,Realm实质上是一个安全相关的DAO:它封装了数据源的连接细节,并在需要时将相关数据提供给Shiro。当配置Shiro时,你必须至少指定一个Realm,用于认证和(或)授权。配置多个Realm是可以的,但是至少需要一个。
Shiro内置了可以连接大量安全数据源(又名目录)的Realm,如LDAP、关系数据库(JDBC)、类似INI的文本配置资源以及属性文件等。如果缺省的Realm不能满足需求,你还可以插入代表自定义数据源的自己的Realm实现。
Shiro完整架构图:
除前文所讲Subject、SecurityManager 、Realm三个核心组件外,Shiro主要组件还包括:
Authenticator :认证就是核实用户身份的过程。这个过程的常见例子是大家都熟悉的“用户/密码”组合。多数用户在登录软件系统时,通常提供自己的用户名(当事人)和支持他们的密码(证书)。如果存储在系统中的密码(或密码表示)与用户提供的匹配,他们就被认为通过认证。
Authorizer :授权实质上就是访问控制 - 控制用户能够访问应用中的哪些内容,比如资源、Web页面等等。
SessionManager :在安全框架领域,Apache Shiro提供了一些独特的东西:可在任何应用或架构层一致地使用Session API。即,Shiro为任何应用提供了一个会话编程范式 - 从小型后 * 立应用到大型集群Web应用。这意味着,那些希望使用会话的应用开发者,不必被迫使用Servlet或EJB容器了。或者,如果正在使用这些容器,开发者现在也可以选择使用在任何层统一一致的会话API,取代Servlet或EJB机制。
CacheManager :对Shiro的其他组件提供缓存支持。
总结
以上所述是小编给大家介绍的Apache Shiro 框架简介网站的支持!
来源:http://blog.sina.com.cn/s/blog_9c6852670102wwbd.html


猜你喜欢
- 学习kubernetes的时候,我们需要在kubernetes环境下实战操作,然而kubernetes环境安装并不容器,现在通过ranche
- 11月10日,全球领先的电子商务服务商阿里巴巴(HK1688)发布了2009年Q3财报。财报显示,阿里巴巴国际交易市场注册用户首次突破1,0
- 今天像往常一样打开站长统计的后台,关心一下各种访问统计,当我点击搜索引擎 ->今日统计 时突然弹出(alert)了
- 背景我本来是要在VMware 官方download 一个6.7的Vcenter,但是除了VMware-VCSA-all-6.7 还看到一个
- 我们的所有托管计划都会含有一些免费的server-side applications,你可以在建设网站及客户化你的网站时使用它们。可以通过访
- 06下半年以来,对中国广大的站长来说,是具有特别意义的一年。中国的网络社区突然进入产业的冷静期,但是在这个艰苦阶段中,很多留下来的站长仍然坚
- 为使广大站长更顺利地安装上康盛创想(Comsenz)推出的社区产品 UCenter 1.5,UCenter Home 2.0 和 Discu
- 笔者有不少朋友因为工作关系常常移动办公,因此资料的传递、与公司信息的及时交流或是累了想在异地打开公司或家里的电脑看看电影等等应用显得很头疼。
- SEO服务中,与客户罪有应得争议的就是具体排名是否可以保证。有时你可能会看到一些SEOer的广告,说可以保证排名,保证排在第一,或者第二。我
- 在Google Earth 5.1测试版发布时就已改进了软件运行的速度,尤其是移动和转换地点时地图的更新速度明显提高。近日官方发布5.1正式
- 怎样在godaddy Linux虚拟主机上配置MIME类型呢?你可以使用一个.htaccess文档来配置你的MIME类型。 当你在.htac
- 自国内知名的网站内容管理系统DedeCMS v5.7 beta版2月21日发布以来,经过两周紧张的测试和调整。织梦CMS于昨日下午发布DeD
- 打开:require/sendemail.php查找第一个(269行左右):fwrite($fp, $msg); 在此行
- 我是2000年参加工作的,第一年在宁波一所大学当老师,当时工资可能只有2K不到,由于我上大学时也经常给别人兼职打工,平均下来也能赚个每个月2
- 什么是SPF就是Sender Policy Framework。SPF可以防止别人伪造你来发邮件,是一个反伪造性邮件的解决方案。当你定义了你
- 一、先关闭不需要的端口 我比较小心,先关了端口。只开了3389、21、80、1433,有些人一直说什么默认的3389不安全,对此我不否认,但
- 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的
- Google之所以受网站管理员和Internet媒体服务公司的欢迎,是由于它并非只使用关键词或代理搜索技术,而是将自身建立在高级的网页级别技
- 其他不再赘述,发挥二的性格,我们直奔主题。用户打开网站的整个流程中,DNS解析时第一环,当用户输入域名并敲回车后,windows系统调用DN
- 老谢老是听刚开始学软文的学生抱怨写软文没有灵感,其实灵感也是因为你的思想,软文灵感不是天生的,它可以学习和创造!“软文”,顾名思义,就在于个