shiro

Shiro自定义Realm(二)

℡╲_俬逩灬. 提交于 2020-01-11 06:16:01
项目结构: 1 :自定义 reaml ,继承 AuthorizingRealm 重写 3 方法:getName doGetAuthorizationInfo doGetAuthenticationInfo public class MyRealm extends AuthorizingRealm { public String getName(){ return "MyRealm"; } //授权操作 @Override protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) { return null; } //认证操作 @Override protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException { //参数token:表示登陆时保证的UsernamePasswordToken //通过用户名到数据库中查用户信息,封装成一个AuthenticationInfo认证对象返回,方便认证器进行对比 String username =(String)

Shiro安全框架入门笔记(一)

纵然是瞬间 提交于 2020-01-10 11:25:51
一、Shiro简介 shiro是一个Apache的开源安全框架,提供认证,授权,企业会话管理,安全加密,缓存管理等 二、Shiro整体架构 最上面部分 操作用户 操作核心(Security Manager) 1、authenticator : 认证器(登录登出) 2、authorizer : 授权器(赋予主体有哪些权限) 3、session manager :session管理器(可以在不使用任何框架的情况下管理session) 4、cache manager : 缓存管理器 (管理操作缓存数据) 5、session dao : 提供session操作(增删改查) 6、realms : shiro和桥梁 认证信息权限数据角色数据都是通过它来获取 最右边是shiro的加密工具 底部数据库部分 三、Shiro认证 、授权、自定义realm 认证流程图 1、使用SimpleAccountRealm实现认证授权过程 pom <dependencies> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>junit</groupId>

Apache-Shiro介绍

丶灬走出姿态 提交于 2020-01-10 07:45:33
Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 主要功能 三个核心组件:Subject, SecurityManager 和 Realms. Subject:即“当前操作用户”。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。它仅仅意味着“当前跟软件交互的东西”。但考虑到大多数目的和用途,你可以把它认为是Shiro的“用户”概念。   Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。   SecurityManager:它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务。   Realm: Realm充当了Shiro与应用安全数据间的“桥梁”或者“连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息。   从这个意义上讲,Realm实质上是一个安全相关的DAO:它封装了数据源的连接细节

Shiro权限框架简介

▼魔方 西西 提交于 2020-01-10 03:26:44
http://blog.csdn.net/xiaoxian8023/article/details/17892041 Shiro权限框架简介 2014-01-05 23:51 3111人阅读 评论 (37) 收藏 举报 分类: 【java框架】 (25) 版权声明:本文为博主原创文章,未经博主允许不得转载。如需转载请声明:【转自 http://blog.csdn.net/xiaoxian8023 】 目录 (?) [+] 最近加入了gxpt项目组,被安排做权限模块,所以也有幸第一次接触到了Shiro框架。让我们来一起领略Shiro的风采吧。 什么是Apache Shiro? Apache Shiro(发音为“shee-roh”,日语“堡垒(Castle)”的意思)是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理功能,可为任何应用提供安全保障 - 从命令行应用、移动应用到大型网络及企业应用。 你可以用 Apache Shiro做下面的事情: 验证用户 对用户执行访问控制,如: 判断用户是否拥有角色admin 判断用户是否拥有访问的权限 在任何环境下使用 Session API 可以使用多个用户数据源。例如一个是oracle用户库,另外一个是mysql用户库 单点登录(SSO)功能 “Remember Me”服务 ,类似购物车的功能,shiro官方建议开启

1.java安全框架SHIRO

99封情书 提交于 2020-01-09 20:25:43
1. shiro介绍   Apache Shiro是一个强大且易用的java安全框架,执行身份验证、授权、密码和会话管理。 使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 2 shiro的主要功能   三个核心组件:Subject , SecurityManager 和 Realms。      Subject【用户概念】:即"当前操作用户"。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台账户(Daemon Account)或其他类似事务。 它仅仅意味着"当前跟软件交互的东西"。但考虑到大多数目的和用途,你可以把它认为是Shiro的"用户"概念。      Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。   SecurityManager【核心】:它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务。   Realm【桥梁】: Realm充当了Shiro与应用数据间的"桥梁"或者"连接器"。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息。   从这个意义上讲

Apache-Shiro

删除回忆录丶 提交于 2020-01-09 19:36:29
1.1 shiro 介绍 Apache Shiro 是一个强大且易用的 Java 安全框架 , 执行身份验证、授权、密码学和会话管理。使用 Shiro 的易于理解的 API, 您可以快速、轻松地获得任何应用程序 , 从最小的移动应用程序到最大的网络和企业应用程序。 三个核心组件: Subject, SecurityManager 和 Realms. Subject 即 “当前操作用户”。但是,在 Shiro 中, Subject 这一概念并不仅仅指人,也可以是第三方进程、后台帐户( Daemon Account )或其他类似事物。它仅仅意味着“当前跟软件交互的东西”。但考虑到大多数目的和用途,你可以把它认为是 Shiro 的“用户”概念。 Subject 代表了当前用户的安全操作, SecurityManager 则管理所有用户的安全操作。 SecurityManager 它是 Shiro 框架的核心,典型的 Facade 模式, Shiro 通过 SecurityManager 来管理内部组件实例,并通过它来提供安全管理的各种服务。 Realm Realm 充当了 Shiro 与应用安全数据间的“桥梁”或者“连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时, Shiro 会从应用配置的 Realm 中查找用户及其权限信息。 1.2 S hiro 体系结构

shiro 框架

╄→尐↘猪︶ㄣ 提交于 2020-01-09 19:36:01
惊天给大家总结一点shiro框架的小知识 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 三个核心组件:Subject, SecurityManager 和 Realms.Subject:即“当前操作用户”。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。          它仅仅意味着“当前跟软件交互的东西”。但考虑到大多数目的和用途,你可以把它认为是Shiro的“用户”概念 。 Subject   代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。 SecurityManager:   它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务。 Realm:   Realm充当了Shiro与应用安全数据间的“桥梁”或者“连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息。     从这个意义上讲,Realm实质上是一个安全相关的DAO

shiro(java安全框架)

Deadly 提交于 2020-01-09 19:35:36
shiro(java安全框架)     以下都是综合之前的人加上自己的一些小总结     Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 Shiro 主要分为来个部分就是认证和授权,在个人感觉来看就是查询数据库做相应的判断而已,Shiro只是一个框架而已,其中的内容需要自己的去构建,前后是自己的,中间是Shiro帮我们去搭建和配置好的     个人认为需要看一下其中的一些源码,更有帮助的深入的去了解Shiro的原理。 Shiro的主要框架图: 方法类的走向: 对一些其中的方法的简单说明: Subject Subject即主体,外部应用与subject进行交互,subject记录了当前操作用户,将用户的概念理解为当前操作的主体,可能是一个通过浏览器请求的用户,也可能是一个运行的程序。 Subject在shiro中是一个接口,接口中定义了很多认证授相关的方法,外部程序通过subject进行认证授,而subject是通过SecurityManager安全管理器进行认证授权 SecurityManager SecurityManager即安全管理器,对全部的subject进行安全管理,它是shiro的核心

Spring Boot整合shiro后导致@Transactional等注解失效的问题以及解决

杀马特。学长 韩版系。学妹 提交于 2020-01-08 15:56:17
Spring Boot整合shiro后导致@Transactional等注解失效的问题以及解决 部分转载自: https://blog.csdn.net/gnail_oug/article/details/80706205 一、问题描述 Springboot整合shiro前,service里的@Cacheable、@Transactional等注解都正常使用。 整合shiro之后,UserRealm类里自动注入的service中的注解失效(初步判断Shiro的初始化bean会影响到Spring bean的初始化,导致某些bean的事务失效) UserRealm代码如下: public class UserRealm extends AuthorizingRealm { private static final Logger LOGGER = LoggerFactory.getLogger(UserRealm.class); /** * 这种情况下SysUserService里缓存、事务等注解失效 */ @Autowired private SysUserService sysUserService; //省略其他代码 } SysUserService代码如下: @Service public class SysUserService { @Autowired private