shiro专题

【Shiro】Shiro 的学习教程(三)之 SpringBoot 集成 Shiro

目录 1、环境准备2、引入 Shiro3、实现认证、退出3.1、使用死数据实现3.2、引入数据库,添加注册功能后端代码前端代码 3.3、MD5、Salt 的认证流程 4.、实现授权4.1、基于角色授权4.2、基于资源授权 5、引入缓存5.1、EhCache 实现缓存5.2、集成 Redis 实现 Shiro 缓存 1、环境准备 新建一个 SpringBoot 工程,引入依赖:

【Shiro】Shiro 的学习教程(二)之认证、授权源码分析

目录 1、背景2、相关类图3、解析3.1、加载、解析阶段3.2、认证阶段3.3、授权阶段 1、背景 继上节代码,通过 debug 进行 shiro 源码分析。 2、相关类图 debug 之前,先了解下一些类的结构图: ①:SecurityManager:安全管理器 DefaultSecurityManager: RememberMeManager:实现【记住我】功能

【Shiro】Shiro 的学习教程(一)之快速入门

目录 1、Shiro 简介2、Shiro 认证、授权2.1、认证2.2、授权 3、快速入门4、自定义 Realm5、加密6、实现授权 1、Shiro 简介 Shiro 官网:https://shiro.apache.org/ Shiro 是一个功能强大且易于使用的 Java 安全框架,它执行身份验证、授权、加密和会话管理。使用 Shiro 易于理解的 API,您可以快速轻松地保

shiro session 监听

spring 使用 shiro 后,由于shiro重新封装了原有的session,所以不能再使用原来的session监听方法了 (1)在shiro配额只文件中设置监听类   <!-- shiroSessionListener  监听类--><bean id="shiroSessionListener" class="com.listener.ShiroSessionListener"></

Shiro身份认证流程

http://www.toutiao.com/a6353832181929279746/?tt_from=mobile_qq&utm_campaign=client_share&app=explore_article&utm_source=mobile_qq&iid=5840657922&utm_medium=toutiao_ios

Shiro-721漏洞详解及复现

之前有些Shiro-550反序列化漏洞的文章Shiro-550漏洞详解及复现_shiro框架漏洞-CSDN博客 这里简单补充一下关于Shiro-721漏洞的内容。 目录 Shiro-721漏洞原理 Padding Oracle攻击 利用条件 影响版本 漏洞复现 Shiro-721漏洞原理 Shiro-721用到的加密方式是AES-128-CBC,跟Shiro-550最大的

进阶SpringBoot之 Shiro(6)整合 Thymeleaf

Subject:用户 SecurityManager:管理所有用户 Realm:连接数据 pom.xml 导入 thymeleaf-extras-shiro 的 jar 包,整合 shiro-thymeleaf <!-- shiro-thymeleaf 整合 --><dependency><groupId>com.github.theborakompanioni</grou

Shiro的认证原理(Subject#login的背后故事)

登录操作一般都是我们触发的: Subject subject = SecurityUtils.getSubject();AuthenticationToken authenticationToken = new ...subject.login(authenticationToken); Subject的登录将委托给SecurityManager,SecurityManager的logi

Shiro过滤器的维护与匹配执行

servlet的初始化会触发核心过滤器的创建: public Object getObject() throws Exception {if (instance == null) {instance = createInstance();}return instance;} 在createInstance方法中会调用 FilterChainManager manager = create

shiro的使用入门

shiro是一个权限控制框架,因为项目需要自己看了看,在这里把所有学到的分享一下。shiro主要由AuthorizationInfo、AuthenticationInfo、Subject构成一个权限环境,doGetAuthenticationInfo方法是用户登录的使用调用的( subject.login(token);),doGetAuthorizationInfo方法是在用户进行权限验

Shiro的两种配置方式

Apache Shiro是一款Java 安全框架,可以用于完成认证、授权、加密、会话管理、与Web集成、缓存等功能。根据官方文档,我这里列举出两种常用的配置方式,一是ini文件配置,二是spring xml文件的配置方式。 二者的配置,基本都是针对Shiro的以下几个常用组件:securityManager,cachManager,Realm,以及对应的链接拦截规则(urls)。 1. shi

Shiro HelloWorld (二)从数据库中获得数据

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">1、创建users表,插入一条记录</span> <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb

Shiro HelloWorld

Maven工程结构图如下: pom.xml中依赖如下: <span style="white-space:pre"> </span><dependencies><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</artifactId><version>1.2.4</version></de

进阶SpringBoot之 Shiro(3)实现登录拦截和用户认证

Config 配置类添加 Shiro 的内置过滤器 anon:无需认证就能访问 authc:认证才能访问 user:拥有“记住我”功能才能使用 perms:拥有对某个资源的权限才能访问 role:拥有某个角色权限才能访问 package com.demo.shirospringboot.config;import org.apache.shiro.spring.web.ShiroFil

进阶SpringBoot之 Shiro(2)环境搭建

Spring Boot 创建 Web 项目,pom.xml 导入 Thymeleaf 依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency> resources 目录下 templat

Apache Shiro学习(五)Shiro 配置说明

Apache Shiro的配置主要分为四部分:  对象和属性的定义与配置URL的过滤器配置静态用户配置静态角色配置 其中,由于用户、角色一般由后台进行操作的动态数据,因此Shiro配置一般仅包含前两项的配置。 Apache Shiro的大多数组件是基于POJO的,因此我们可以使用POJO兼容的任何配置机制进行配置,例如:Java代码、Sping XML、YAML、JSON、ini文件等等

Apache Shiro学习(四)Realm 域

在认证、授权内部实现机制中都有提到,最终处理都将交给Real进行处理。因为在Shiro中,最终是通过Realm来获取应用程序中的用户、角色及权限信息的。通常情况下,在Realm中会直接从我们的数据源中获取Shiro需要的验证信息。可以说,Realm是专用于安全框架的DAO.  一、认证实现  正如前文所提到的,Shiro的认证过程最终会交由Realm执行,这时会调用Realm的getAuthen

shiro-velocity整合

shiro的标签支持jsp。。。 这尼玛是不能容忍的。 然后网上找资料发现有一个哥们写了整合工具,然后使用了他的。。 忽然发现项目中的velocity与toolbox版本都比较低。 然后spring对velocity也是从1.3X开始的。 后来开始研究velocity-toolbox 发现都是写一个工具类 然后借鉴了之前的那个哥们的项目 得出以下结论 新建一个Permission

《权限系列shiro+cas》----cas登录原理

前言 这篇博客小编只是贴了两个cas官网上的两个原图,这两个图对于理解cas的单点登录很有帮助。 不使用代理的登录时序图 使用代理的登录时序图 小结 这两张图展示了cas的登录原理,里面用到了很多专业术语,有TGT,ST等等,将cas的登录原理总结成一句话,就是几个cookie和几个session之间的关系。

《权限系列shiro+cas》----修改cas的默认登录页

前言 cas的默认登录页相对来说不怎么友好,我们可以自己定做。 cas原始登录页面 修改步骤 上面的页面就是cas\WEB-INF\view\jsp\default\ui\casLoginView.jsp, 修改配置文件 CAS所有的界面位置都是在cas.properties(具体位置:cas\WEB-INF\cas.properties)中指定的。我们打开这个文件,找到下面这行

《权限系列shiro+cas》----Cas服务端的配置

前言 小编用的casServer版本是4.0的,在4.0之后cas做了升级,据说变化很大,大家如果有兴趣可以到cas的官网查看。下面的所有操作都时在源码中cas文件夹中操作的。 源码地址 点击这里,去小编的GitHub上下载源码 去掉Https协议 小编做的项目是企业内部使用的,如果此项目放到外网上去访问,建议不要去掉https协议。下面是去掉https协议的教程。到webapps\ca

《权限系列shiro+cas》----配置各个应用程序

前言 shiro-cas-authority已经大体的介绍完毕,现在我们需要在各个应用程序之间来引用它实现权限管理。 Cas客户端与服务端的配置 cas的客户端在shiro-cas-authority已经配置完成,我们配置cas的服务端时,可以将在源码上下载下来的cas文件夹放在tomcat的webapps目录下,然后启动tomcat,这样cas的服务端就生效了。 源码地址 点击这里,

shiro学习之后——认证

一、认证流程       ①、提供用户名(手机号、邮箱等)和密码      ②、和数据库信息匹配      ③、匹配成功,继续访问      ④、匹配失败,重新提供用户名和密码进行认证      这是我们一般的登录认证过程,对于shiro来说,认证用户身份需要两个信息:principals和credentials;最常见的principals/credentia

shiro学习之路——shiro简介

一、推荐内容                 《跟我学shiro》                 这是开涛的关于学习shiro的系列博客,推荐 二、shiro简介                其实shiro是个什么东西,我目前也说不太详细,只知道它可以用来做认证、授权、加密等功能,这几天的功能我目前正在使用。关于shiro的简介,开涛写的很详细。      官网介绍,shiro

【颗粒归仓】--shiro

Shiro:是一个开源的安全框架,提供身份验证、授权、密码学和会话管理。    基本内容:      Authentication:身份认证/登录,验证用户是不是拥有相应的身份;      Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;

【Shiro】(一)Shiro初了解

在ITOO里面登录用到了Shrio,一直没有好好的理解和学习,下面我们就来看一下Shiro到底是什么东西。 (一)Shiro介绍      shiro是apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权。没有使用Shiro之前,我们的用户登陆和授权,都是自己敲代码写后台实现,Shiro框架就封装对用户认证和授权进行了封装,减少了我们的代码编写。使用shiro实现系统 的权