概述
一、shiro简介
官方链接:shiro官方网
Apache Shiro是Java的一个安全框架。功能强大,使用简单的Java安全框架,它为开发人员提供一个直观而全面的认证,
授权,缓存,加密及会话管理的解决方案。
实际上,Shiro的主要功能是管理应用程序中与安全相关的全部,同时尽可能支持多种实现方法。
Shiro是建立在完善的接口驱动设计和面向对象原则之上的,支持各种自定义行为。
Shiro提供的默认实现,使其能完成与其他安全框架同样的功能,这不也是我们一直努力想要得到的吗!
Apache Shiro相当简单,对比Spring Security,可能没有Spring Security做的功能强大,但是
在实际工作时可能并不需要那么复杂的东西,所以使用小而简单的Shiro就足够了。对于它俩到底哪个好,这个不必纠结,更简单的解决项目问题就好了。
Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。
Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。这不就是我们想要的嘛,而且Shiro的API也是非常简单;
二、shiro核心
如图所示:
Shiro 的四大核心部分
-
Authentication(身份验证):简称为“登录”,即证明用户是谁。
-
Authorization(授权):访问控制的过程,即决定是否有权限去访问受保护的资源。
-
Session Management(会话管理):管理用户特定的会话,即使在非 Web 或 EJB 应用程序。
-
Cryptography(加密):通过使用加密算法保持数据安全
shiro的三个核心组件:
-
Subject :正与系统进行交互的人,或某一个第三方服务。所有 Subject 实例都被绑定到(且这是必须的)一个SecurityManager 上。
-
SecurityManager:Shiro 架构的心脏,用来协调内部各安全组件,管理内部组件实例,并通过它来提供安全管理的各种服务。当 Shiro 与一个 Subject 进行交互时,实质上是幕后的 SecurityManager 处理所有繁重的 Subject 安全操作。
-
Realms :本质上是一个特定安全的 DAO。当配置 Shiro 时,必须指定至少一个 Realm 用来进行身份验证和/或授权。Shiro 提供了多种可用的 Realms 来获取安全相关的数据。如关系数据库(JDBC),INI 及属性文件等。可以定义自己 Realm 实现来代表自定义的数据源。
三、SSM框架下Shiro用户认证授权实战(重点)
1、配置maven依赖
2、web.xml配置shiro过滤器
这里配置的shiroFilter过滤器name要与applicationContext-shiro.xml的配置文件中的ShiroFilterFactoryBean否者会找不到对应的过滤器错误
3、web.xml引入applicationContext-shiro.xml的配置文件
5、配置applicationContext-shiro.xml详解
6、自定义realm实现用户认证和授权
最后
以上就是阔达雨为你收集整理的SSM框架整合shiro实战详解一、shiro简介二、shiro核心三、SSM框架下Shiro用户认证授权实战(重点)的全部内容,希望文章能够帮你解决SSM框架整合shiro实战详解一、shiro简介二、shiro核心三、SSM框架下Shiro用户认证授权实战(重点)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复