shiro
liweiwei1419
简单、诚实。
展开
-
SSM + Shiro 整合 (6)- Shiro 集成 Spring
这一节将 Shiro 整合进 Spring。前面一节我们仅仅只是加入了 Shiro,并没有使用 Spring 来管理 Shiro。所以我们在自定义的 Realm 中并不能使用 Spring 的依赖注入特性。步骤 1:加入 Shiro 集成 Spring 的依赖<dependency> <groupId>org.apache.shiro</groupId> <artifactId>sh原创 2016-09-26 08:11:17 · 3918 阅读 · 0 评论 -
Shiro 学习笔记(4)—— 基于字符串的角色和权限
Shiro 学习笔记(4)—— 基于字符串的角色和权限在 Shiro 中默认对角色和权限的定义和解析都是通过字符串来完成的。对于字符串的说明,在 Shiro 的官方文档和张开涛老师的博客上都有详细的说明。我们现在来看一个例子。我们在 Shiro 的核心配置文件 shiro.ini 中写到:[users]liwei=123456,role1,role2zhougu(String),在 Shiro 中默原创 2016-09-17 13:02:57 · 6673 阅读 · 0 评论 -
Shiro 学习笔记(3)—— 授权初步
首先先写一个工具类:/** * Created by Liwei on 2016/2/9. */public class ShiroUtil { public static Subject login(String configFile,String userName,String passwoord){ // 注意:这里 SecurityManager 所在的包名原创 2016-02-09 12:31:16 · 1350 阅读 · 0 评论 -
Shiro 学习笔记(2)—— Jdbc Realm
引言Realm 是安全数据源的意思,配置在 Realm 中的数据,我们可以等同于放置在数据库中的数据一样来看待,因为它们都是“绝对正确”的,我们通过“绝对正确”的数据,去完成对登录用户的数据的判定。 在第 1 节中,我们把“正确的”用户名和密码,放在了一个配置文件中,用于校验用户填写的用户名和密码是否正确。这个“校验”的操作是 Shiro 帮助我们完成的,校验不正确,Shiro 通过抛出异常的方原创 2017-05-04 16:38:16 · 782 阅读 · 1 评论 -
Shiro 学习笔记(1)—— Hello World
Shiro 学习笔记(1)—— Hello WorldShiro 学习笔记1 Hello World什么是 Shiro两个重要的概念认证授权另外两个重要的概念角色权限测试代码的思路什么是 Shiro?百度百科上对 Shiro 的概括是非常准确的: Apache Shiro是一个强大且易用的 Java 安全框架,执行身份验证、授权、密码学和会话管理。在这里,我就直接拿来使用了。Shiro原创 2016-09-17 12:57:20 · 3206 阅读 · 5 评论 -
Shiro 学习总结、博客目录贴
Shiro 学习总结、博客目录贴 1、Shiro 学习笔记(1)-Helloworld 和 身份认证 http://blog.csdn.net/lw_power/article/details/50319121 http://blog.csdn.net/lw_power/article/details/52562734 介绍了使用 Shiro 登录的例子,介绍了安全数据源 Realm 。举例原创 2016-09-30 18:48:15 · 1854 阅读 · 0 评论 -
SSM + Shiro 整合 (5)- 自定义过滤器及权限解析器、介绍权限匹配流程
关于 Shiro 的权限匹配器和过滤器上一节,我们实现了自定义的 Realm,方式是继承 AuthorizingRealm 这个抽象类,分别实现认证的方法和授权的方法。这一节实现的代码的执行顺序 1、过滤器,在过滤器中执行 Subject 对象的判断是否具有某项权限的方法 isPermitted() 传入某一个跟当前登录对象相关的特征值(这里是登录对象正在访问的 url 连接) 2、程序到自定义原创 2016-09-25 23:05:19 · 16050 阅读 · 3 评论 -
SSM + Shiro 整合(4)- 在 Web 项目中添加 Shiro
本节的目标是整合 Shiro。 步骤1:添加依赖<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>${shiro.version}</version></dependency><dependency> <groupId>org原创 2016-09-25 20:48:36 · 12640 阅读 · 1 评论 -
SSM + Shiro 整合 (3)- 添加 Spring MVC 成为 Web 项目
本节的目标是在项目中添加 Spring MVC 的支持。 步骤1 :添加 Maven 的 依赖和 web 目录,编写 web.xml 部署描述符。<!-- Spring 的 Web 依赖 --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <v原创 2016-09-25 20:35:36 · 2821 阅读 · 0 评论 -
SSM + Shiro 整合 (2)- 实现 Spring 集成 MyBatis
改进版的测试方法(第 1 版)public class TestMybatis { private ApplicationContext ac; private UserServiceI userService; @Before public void before(){ ac = new ClassPathXmlApplicationContext(ne原创 2015-03-08 02:25:37 · 7108 阅读 · 2 评论 -
Shiro 学习笔记(6)—— 加密
Shiro 学习笔记(6)—— 加密Shiro 有一个非常强大的功能,就是对加密算法的封装。在我们之前的例子中,我们的密码在 Realm 里返回认证信息的时候,写的都是明文。这样的方式其实是很不安全的。一般地,密码这样的高度敏感的字段,我们应该是使用一种不可破解的算法加密以后存储到我们的数据库中。当用户登录的时候,在用户输入用户名正确(在库中存在)的前提下,将用户输入的密码使用同样的算法加密以后得到原创 2016-09-17 13:07:40 · 3149 阅读 · 0 评论 -
SSM + Shiro 整合 (1)- 实现 Spring 的 HelloWorld
打开 pom.xml 文件。 在浏览器中输入: The Central Repository Search Engine http://search.maven.org/ 在这里查询 GAV。我们依次输入的搜索项是: 1、spring-core; 我们发现依赖也引入进来了。 2、mybatis; 3、mybatis 和 spring 整合的 jar 包:mybatis-sprin原创 2015-03-08 01:01:44 · 5018 阅读 · 4 评论 -
Shiro 学习笔记(7)—— Shiro 集成 Web
Shiro 学习笔记(7)—— Shiro 集成 Web在 Web 环境下集成 Shiro 其实不难,按照官方文本的说明实现就可以了。更多地,我们会在 Spring 的 Web 环境中使用 Shiro ,这个我们后面再讲。参考 Shiro 官方文档中集成 Web 的这个章节:http://shiro.apache.org/webapp-tutorial.html。步骤1:在 web.xml 部署描述原创 2016-09-17 13:09:18 · 2069 阅读 · 0 评论 -
Shiro 学习笔记(3)—— 自定义 Realm
Shiro 学习笔记(3)—— 自定义 Realm前面两节我们已经介绍过 IniRealm 和 JdbcRealm,这一节我们介绍自定义的 Realm 实现我们自己的安全数据源。方式一:implements Realm (这种方式不太常用,只是为了说明知识)这种方式实现的 Realm 仅只能实现认证操作,并不能实现授权操作。代码:public class MapRealm implements Re原创 2016-09-17 13:01:34 · 3167 阅读 · 1 评论 -
Shiro 学习笔记(1)-Helloworld 和 身份认证
项目结构:创建 maven 项目。 1、引入 gav 依赖:<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.2.4</version></dependency><dependency> <groupId>org.slf4原创 2015-12-15 18:27:08 · 1938 阅读 · 0 评论 -
SSM + Shiro 整合 (7)- 认证和授权部分缓存的添加
我们在验证用户具有某些权限的时候,常常会调用自定义 Realm 的授权方法,这个授权方法里面常常要进行数据库查询的。在一个用户权限不会经常变更的情况下,如果不对授权的方法增加缓存,每次检查权限都去查询数据库是很浪费资源的。步骤1:添加 ehcache 依赖<!-- 添加 shiro-ehcache 接口依赖--><dependency> <groupId>org.apache.shiro<原创 2016-09-26 23:25:27 · 5205 阅读 · 1 评论 -
Shiro 学习笔记(5)—— 自定义权限解析器和角色解析器
Shiro 学习笔记(5)—— 自定义角色权限解析器步骤1:实现 Permission 接口public class MyPermission implements Permission { private String resourceId; private String operator; private String instanceId; // 这里为了说明问题,原创 2016-09-17 13:05:07 · 8177 阅读 · 1 评论