Spring Cloud下OAUTH2注销的实现示例
接上文Spring Cloud下基于OAUTH2认证授权的实现,我们将基于Spring Cloud实现OAUTH2的注销功能。
1 增加自定义注销Endpoint
所谓注销只需将access_token和refresh_token失效即可,我们模仿org.springframework.security.oauth2.provider.endpoint.TokenEndpoint写一个使access_token和refresh_token失效的Endpoint:
@FrameworkEndpoint public class RevokeTokenEndpoint { @Autowired @Qualifier("consumerTokenServices") ConsumerTokenServices consumerTokenServices; @RequestMapping(method = RequestMethod.DELETE, value = "/oauth/token") @ResponseBody public String revokeToken(String access_token) { if (consumerTokenServices.revokeToken(access_token)){ return "注销成功"; }else{ return "注销失败"; } } }
2 注销请求方式
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
您可能感兴趣的文章:
- Spring Cloud下基于OAUTH2认证授权的实现示例
相关推荐
-
Spring Cloud下基于OAUTH2认证授权的实现示例
在Spring Cloud需要使用OAUTH2来实现多个微服务的统一认证授权,通过向OAUTH服务发送某个类型的grant type进行集中认证和授权,从而获得access_token,而这个token是受其他微服务信任的,我们在后续的访问可以通过access_token来进行,从而实现了微服务的统一认证授权. 本示例提供了四大部分: discovery-service:服务注册和发现的基本模块 auth-server:OAUTH2认证授权中心 order-service:普通微服务,用来验证认
-
Spring Cloud下OAUTH2注销的实现示例
接上文Spring Cloud下基于OAUTH2认证授权的实现,我们将基于Spring Cloud实现OAUTH2的注销功能. 1 增加自定义注销Endpoint 所谓注销只需将access_token和refresh_token失效即可,我们模仿org.springframework.security.oauth2.provider.endpoint.TokenEndpoint写一个使access_token和refresh_token失效的Endpoint: @FrameworkEndpoi
-
浅谈Spring Cloud下微服务权限方案
背景 从传统的单体应用转型Spring Cloud的朋友都在问我,Spring Cloud下的微服务权限怎么管?怎么设计比较合理?从大层面讲叫服务权限,往小处拆分,分别为三块:用户认证.用户权限.服务校验. 用户认证 传统的单体应用可能习惯了session的存在,而到了Spring cloud的微服务化后,session虽然可以采取分布式会话来解决,但终究不是上上策.开始有人推行Spring Cloud Security结合很好的OAuth2,后面为了优化OAuth 2中Access Token
-
Spring Cloud动态配置刷新RefreshScope使用示例详解
目录 引言 一.了解@RefreshScope,先要了解@Scope 二.RefreshScope 的实现原理 三.使用——@RefreshScope 使用流程 引言 用过Spring Cloud的同学都知道在使用动态配置刷新的我们要配置一个 @RefreshScope,在类上才可以实现对象属性的的动态更新. @RefreshScope 能实现动态刷新全仰仗着 @Scope这个注解. 一.了解@RefreshScope,先要了解@Scope 1.RefreshScope继承于GenericSco
-
spring cloud 使用oauth2 问题汇总
OAth2是一个标准的授权协议. 在认证与授权的过程中,主要包含以下3种角色. 服务提供方 Authorization Server.资源持有者 Resource Server.客户端 Client. 下面重点介绍下spring cloud 使用oauth2问题,内容如下所示: 1.spring boot 集成oauth2,带了token却访问时各种禁止访问,追踪代码过滤器发现变为匿名用户导致无法访问授权资源,添加过滤器各种都没效果,甚至添加了过滤器登录都登录不了了, 添加的依赖为 <depen
-
Spring 环境下实现策略模式的示例
背景 最近在忙一个需求,大致就是给满足特定条件的用户发营销邮件,但是用户的来源有很多方式:从 ES 查询的.从 csv 导入的.从 MongoDB 查询-.. 需求很简单,但是怎么写的优雅,方便后续扩展,就存在很多门道了. 我们的项目是基于 Spring Boot 开发的,因此这篇文章也会基于 Spring Boot 作为基础框架,教你如何使用 Spring 依赖注入的特性,优雅的实现策略模式. 1. 简单粗暴 最简单粗暴直接的方式莫过于 if...else- 了,伪代码如下: if(来源 ==
-
Spring Cloud下实现用户鉴权的方案
目录 一.整体架构 二.实现步骤 三.其它问题 四.完整代码 Java下常用的安全框架主要有Spring Security和shiro,都可提供非常强大的功能,但学习成本较高.在微服务下鉴权多多少少都会对服务有一定的入侵性. 为了降低依赖,减少入侵,让鉴权功能相对应用服务透明,我们采用网关拦截资源请求的方式进行鉴权. 一.整体架构 用户鉴权模块位于API GateWay服务中,所有的API资源请求都需要从此通过. 做身份认证,通过则缓存用户权限数据,不通过返回401 做用户鉴权,比对当前访问资源
-
使用Spring Cloud Feign上传文件的示例
最近经常有人问Spring Cloud Feign如何上传文件.有团队的新成员,也有其他公司的兄弟.本文简单做个总结-- 早期的Spring Cloud中,Feign本身是没有上传文件的能力的(1年之前),要想实现这一点,需要自己去编写Encoder 去实现上传.现在我们幸福了很多.因为Feign官方提供了子项目feign-form ,其中实现了上传所需的 Encoder . 注:笔者测试的版本是Edgware.RELEASE.Camden.Dalston同样适应本文所述. 加依赖 <depen
-
Spring Cloud Config Client超时及重试示例详解
简介 有时客户端需要在 config server 无响应时进行重试,以给 config server 时间进行恢复.利用 spring 提供的重试组件,我们可以方便的配置重试机制,包括重试间隔,重试次数等.下面话不多说了,来一起看看详细的介绍吧. 项目源码 点击下载 为 web 项目添加依赖 开启客户端重试功能需要两个新依赖,spring-retry 和 spring-boot-starter-aop,把如下代码添加到 web 项目的 pom.xml 文件中: <dependency> &l
-
使用Spring Cloud Feign远程调用的方法示例
在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端.我们可以使用JDK原生的URLConnection.Apache的Http Client.Netty的异步HTTP Client, Spring的RestTemplate.但是,用起来最方便.最优雅的还是要属Feign了. Feign简介 Feign是一个声明式的Web服务客户端,使用Feign可使得Web服务客户端的写入更加方便. 它具有可插拔注释支持
随机推荐
- VBScript语法速查及实例说明
- oracle 10g 精简版安装步骤分享
- xml 与javascript结合的问题解决方法
- php动态函数调用方法
- Apache服务器下防止图片盗链的办法
- php判断ip黑名单程序代码实例
- asp 小偷采集程序原理与常用函数方法
- C语言实现汉诺塔游戏
- java中重写equals和重写hashCode()
- mysql常用函数汇总(分享)
- Mysql跨表更新 多表update sql语句总结
- PHP学习笔记 用户注册模块用户类以及验证码类
- Ruby中的方法(函数)学习总结
- BootStrap智能表单实战系列(九)表单图片上传的支持
- 浅谈关于JavaScript API设计的一些建议和准则
- Android6.0 屏幕固定功能详解
- Win 2003中打开DirectX加速
- 激光打印机出现故障检修大全第1/2页
- 做一个网站搜索引擎优化项目的注意事项
- 怎样按照个人爱好设置默认浏览器