shiro之SimpleAccountRealm】的更多相关文章

我使用的是maven构建的工程,junit测试 Shiro认证过程 创建SecurityManager--->主体提交认证--->SecurityManager认证--->Authenticsto认证--->Realm验证 Shiro授权过程 创建SecurityManager--->主体授权--->ecurityManager授权--->Authorizer授权--->Realm获取角色权限数据 1.导入依赖 pom.xml <?xml versio…
书接上回 构建 struts2 spring3 mybatis 的maven项目 构建 pom.xml 继续在原有框架下 融合shiro ,具体shiro是啥 这里就不解释了,恩 反正功能挺强大的 本着先会用再深入的原则,还是尝试着将shiro融入框架中 0 首先上下这个项目的整体结构图…
shiro安全框架是目前为止作为登录注册最常用的框架,因为它十分的强大简单,提供了认证.授权.加密和会话管理等功能 . shiro能做什么? 认证:验证用户的身份 授权:对用户执行访问控制:判断用户是否被允许做某事 会话管理:在任何环境下使用 Session API,即使没有 Web 或EJB 容器. 加密:以更简洁易用的方式使用加密功能,保护或隐藏数据防止被偷窥 Realms:聚集一个或多个用户安全数据的数据源 单点登录(SSO)功能. 为没有关联到登录的用户启用 "Remember Me&q…
Shiro 简介 照例又去官网扒了扒介绍: Apache Shiro™ is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. With Shiro's easy-to-understand API, you can quickly and easily secure any ap…
通过JavaSE,创建不同的 realm ,由简单到复杂一步步的深入的理解shiro完成认证与授权内在联系 推荐从下向上一步步的测试,每一个方法都有详细的注释,说明  从哪里来-->到哪里去,理清其中的前因后果 简单点的一下用户, 角色与权限之间的关系 一个用户可以拥有某种角色或者身份,身份或者角色代表一种或多种权限 一个用户可以拥有一种或多种权限, 我理解为 角色或身份 做为用户的一个属性 来封装权限.用户最好不要直接拥有权限,而是作为某种角色拥有角色封装的权限 package test; i…
入门 1.simpleRealmTest package cn.realm; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.mgt.DefaultSecurityManager; import org.apache.shiro.realm.SimpleAccountRealm; import org.apache…
shiro安全框架入门整理 package com.shiro.test; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.mgt.DefaultSecurityManager; import org.apache.shiro.realm.SimpleAccountRealm; import org.apache.…
shiro 基本知识测试 <!--shiro核心包--> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>com.alibaba<…
简介 Apache Shiro 是 Java 的一个安全(权限)框架.主要提供了认证.授权.加密和会话管理等功能. Authentication:身份认证/登录,验证用户是不是拥有相应的身份:Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限:即判断用户是否能进行什么操作,如:验证某个用户是否拥有某个角色.或者细粒度的验证某个用户对某个资源是否具有某个权限:Session Manager:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中:…
Apache Shiro 是 Java 的一个安全框架.Shiro 可以帮助我们完成:认证.授权.加密.会话管理.与 Web 集成.缓存等. Shiro的内置Realm:IniRealm和JdbcRealm 编写测试案例之前需要添加shiro的相关依赖: <dependencies> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifa…
1.shiro(权限框架(认证,赋予角色,授权...)): readme.txt(运行机制): 1.从jsp的form中的action属性跳转到springmvc的Handler中(controller) 2.首先获取Subject,因为securityManager在applicationContext.xml中配置过了,所以可以直接 通过Subject currentUser = SecurityUtils.getSubject(); 3.开始认证 首先把账号和密码封装进UsernamePa…
1. shiro默认自带的realm和常见使用方法 realm作用:Shiro 从 Realm 获取安全数据 默认自带的realm:idae查看realm继承关系,有默认实现和自定义继承的realm 两个概念 principal : 主体的标示,可以有多个,但是需要具有唯一性,常见的有用户名,手机号,邮箱等 credential:凭证, 一般就是密码 所以一般我们说 principal + credential 就账号 + 密码 开发中,往往是自定义realm , 即集成 Authorizing…
1. 添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-j…
Shiro授权过程和认证过程相似: 项目结构: package com.shiro.shiroframe; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.mgt.DefaultSecurityManager; import org.apache.shiro.realm.SimpleAccountRealm; im…
Shiro的认证流程大体可以参考下面这幅图: 但是没有接触过shiro的同学看到上面的图片也不明白,下面我们来在代码中尝试体验Shiro的认证过程: 1.新建一个SpringBoot项目项目结构如下: ShiroframeApplicationTests代码: package com.shiro.shiroframe; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToke…
1.核心依赖 <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.4.0</version> </dependency> 2.认证流程:创建SecurityManager-->主体提交认证-->SecurityMananger认证-->Authentict…
shiro与spring的整合 上一期,我们分享了如何在项目中使用shiro,了解了shiro的基本用法,但毕竟学习shiro的目的就是在项目中应用shiro,更准确地说是在web项目中应用shiro.那么,今天我们就来探讨一下shiro在spring web项目中的应用,这里依然参考官方sample部分的代码.好了,废话少说,直接开战. spring xml方式 首先当然是创建spring项目,这里提供两种方案,一种是通过xml配置的spring项目,一种是纯注解的spring项目.先来说xm…
什么是ACL和RBAC ACL Access Control list:访问控制列表 优点:简单易用,开发便捷 缺点:用户和权限直接挂钩,导致在授予时的复杂性,比较分散,不便于管理 例子:常见的文件系统权限设计,直接给用户加权限 RBAC Role Based Access Control:基于角色的访问控制 权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限 优点:简化了用户与权限的管理,通过对用户进行分类,使得角色与权限关联起来 缺点:开发比ACL相对复杂 例子:基于RBAC模…
Shiro 简介 照例又去官网扒了扒介绍: Apache Shiro is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. With Shiro's easy-to-understand API, you can quickly and easily secure any app…
Authentication(身份认证)是Shiro权限控制的第一步,用来告诉系统你就是你. 在提交认证的时候,我们需要给系统提交两个信息: Principals:是一个表示用户的唯一属性,可以是用户名,邮箱之类的. Credentials:是证明用户身份的证书,可以是密码或者指纹之类的. 认证主要分为三步: 1.收集认证信息 2.提交认证信息 3.如果认证成功,则允许访问,否则就拒绝访问或者重试. 收集认证信息: 在入门的例子中,使用了一个UsernamePasswordToken来收集用户的…
1 Realm简介 1.1 Realm作用 shiro最终是通过Realm获取安全数据的(如用户.角色.权限),也就是说认证或者授权都会通过Realm进行数据操作 1.2 Realm接口 1.2.1 源代码 1.2.2 方法说明>getName:返回一个唯一的 Realm 名字 >supports:判断此 Realm 是否支持此 Token >getAuthenticationInfo:根据 Token 获取认证信息,该方法就是用来实现认证逻辑的(从Realm的实现类org.apache…
这个错误,在网上搜找了好久,说是什么jar包冲突,什么环境配置,我经过验证均是正确的,javac java java -version 都没问题,环境变量也OK,各种解释均没有能够解决我的问题,最后好一顿折腾,解决了 shiro 的测试方法 package com.sharp.forward; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org…
在上一篇介绍SecurityManager的初始化过程中,也有realm的粗略介绍. realm的概念在安全领域随处可见: 各种中间件的realm.spring security的realm.shiro的realm...如下: tomcat的realm: http://tomcat.apache.org/tomcat-7.0-doc/realm-howto.html weblogic的realm:http://edocs.weblogicfans.net/wls/docs92/secintro/…
目录 SecurityManager获取过程 1.SecurityManager接口介绍 2.SecurityManager实例化时序图 3.源码分析 4.总结 @   上篇文章Shiro源码分析之获取SecurityManager工厂获取我们介绍了SecurityManager工厂的获取步骤,本文在此基础上来分析下SecurityManager对象产生的过程. SecurityManager获取过程 1.SecurityManager接口介绍   SecurityManager安全管理器,是S…
Shiro Shiro简介 SpringMVC整合Shiro,Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能. Authentication:身份认证/登录,验证用户是不是拥有相应的身份: Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限:即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色.或者细粒度的验证某个用户对某个资源是否具有某个权限: Session Manager:会话管理,即用户登录后就是一次会话,在没…
1.shiro的课程目标 (1)shiro的整体框架 各组件的概念 (2)shiro 认证 授权的过程 (3)shiro自定义的Reaml Filter (4)shiro session 管理 (5)shiro 的缓存管理 (6)shiro 集成spring 授权 inirealm概念:类似于 simpleAccountRealm接下来 有了一个 jdbcRealm 最后 引入自定义 MyShiroRealm 接下来学习了 md5加密,还有加盐更难识别 shiro集成 spring 使得登录有了…
6.1 Realm [2.5 Realm]及[3.5 Authorizer]部分都已经详细介绍过Realm了,接下来再来看一下一般真实环境下的Realm如何实现. 1.定义实体及关系   即用户-角色之间是多对多关系,角色-权限之间是多对多关系:且用户和权限之间通过角色建立关系:在系统中验证时通过权限验证,角色只是权限集合,即所谓的显示角色:其实权限应该对应到资源(如菜单.URL.页面按钮.Java方法等)中,即应该将权限字符串存储到资源实体中,但是目前为了简单化,直接提取一个权限表,[综合示例…
Java环境下shiro的测试 1.导入依赖的核心jar包 <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.3.2</version> </dependency> 2.认证程序 2.1 构建users配置文件 xxx.ini doGetAuthenticationInf…
package com.shiro; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.*; import org.apache.shiro.config.IniSecurityManagerFactory; import org.apache.shiro.mgt.SecurityManager; import org.apache.shiro.session.Session; import org.apac…
Shiro 中的 AuthenticationToken AuthenticationToken 用于收集用户提交的身份(如用户名)及凭据(如密码).Shiro会调用CredentialsMatcher对象的doCredentialsMatch方法对AuthenticationInfo对象和AuthenticationToken进行匹配.匹配成功则表示主体(Subject)认证成功,否则表示认证失败. public interface AuthenticationToken extends Se…