Integrate oauth2-shiro with Redis
该项目具有 oauth2-shiro 的所有功能, 并添加了对 Redis 的支持
从 oauth2-shiro fork 的版本: 0.1-rc
项目使用的 Redis 版本信息
spring-data-redis -> 1.5.2.RELEASE
jedis -> 2.7.3
相比 oauth2-shiro 项目, 添加并支持更多的功能与配置
支持Redis连接属性更多的设置, 详见配置文件 resources.properties, authz.properties
提供对 ClientDetails 的操作支持, 详见 ClientDetailsService.java
重构 ClientDetails, 使其支持 序列化(Serializable)
添加配置属性 remove.token.expired, 支持当检测到 access_token 过期时删除对应的 AccessToken 数据
根据需要可去掉MYSQL数据库支持, 只使用Redis, 详见 branch: redis
重构 OAUTH2 业务实现的代码, 使结构,代码更清晰, 可读更强
authz 与 resources 模块中配置的 Redis 必须是同一个Redis的连接信息, 方可正常工作
在项目中,使用Redis做缓存, 提高性能,同时也将数据存入MYSQL数据库; 也支持去掉MYSQL,只使用Redis(需要修改配置实现)
记录项目的变化与发展历程
2015-10-21 从oauth2-shiro fork源代码到本项目中
2015-10-27 创建branch: redis, 只支持Redis操作
2016-07-08 oauth2-shiro-redis 开源
一、前言 在微服务中我们一般采用的是无状态登录,而传统的session方式,在前后端分离的微服务架构下,如继续使用则必将要解决跨域sessionId问题、集群session共享问题等等。这显然是费力不讨好的,而整合shiro,却很不恰巧的与我们的期望有所违背: (1)shiro默认的拦截跳转都是跳转url页面,而前后端分离后,后端并无权干涉页面跳转。 (2)shiro默认使用的登录拦截校验
添加配置类: import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; imp
一、为何要使用jwt+shiro+redis 在微服务中我们一般采用的是无状态登录,而传统的session方式,在前后端分离的微服务架构下,如继续使用则必将要解决跨域sessionId问题、集群session共享问题等等。这显然是费力不讨好的,而整合shiro,却很不恰巧的与我们的期望有所违背: (1)shiro默认的拦截跳转都是跳转url页面,而前后端分离后,后端并无权干涉页面跳转。 (
oauth2-shiro 整合Apache Oltu 与 Shiro. 提供一个轻量的OAUTH2应用框架. 并根据不同的应用场景提供不同的实现(如web场景,移动设备). 该项目与spring-oauth-server实现相同的需求与场合. 只是在实现上使用的技术不同(spring-oauth-server使用Spring Security + spring-security-oauth2实现;
shiro 的cache只提供了ehcache和concurrentHashMap的实现。这是一个redis 的cache实现。希望可以帮到你们 如何使用 添加以下依赖到pom.xml org.crazycake shiro-redis 2.4.2.1-RELEASE 如何配置 有2种配置方式: ini文件 spring配置文件 ini方式: #redisMana
shiro-redisson 是一个 Apache Shiro 的扩展组件,提供了基于 redis 实现的缓存和会话,以支持分布式环境下的应用。底层使用了 redisson 作为 redis 客户端。 Maven: com.github.streamone shiro-redisson 1.5.0.RELEASE 特性: 缓存 支持遵照 Spring Cache 标准的缓存配置
Shiro简介 Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。使用 Shiro 的易于理解的 API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 Shiro的配置 Jboot 默认情况下并没有依赖 shiro,因此,在在使用 Jboot 的 Shiro 模块之前,需要你添加下 Shiro 的 Maven
Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。 安全是企业应用中不可缺少的功能,在众多权限框架中,Shiro(其前身是JSecurity)因其简单而又不失强大的特点引起了不少开发者的注 意。随着Grails的关注度越来越高,在Gra
shiro redis session 是使用 redis 作为 shiro 实现集群会话管理,并可配置 ehcache 作为进程内缓存,通过redis消息订阅发布实现缓存统一。 shiro-redis-session jar shiro-redis-session-webapp 示例 demo 项目依赖: shiro 1.2.3+ spring data redis 1.6.0+