
Oauth2.0
青藤光年
这个作者很懒,什么都没留下…
展开
-
SpringCloud+SpringBoot+OAuth2+Spring Security+Redis实现的微服务统一认证授权
因为目前做了一个基于Spring Cloud的微服务项目,所以了解到了OAuth2,打算整合一下OAuth2来实现统一授权。关于OAuth是一个关于授权的开放网络标准,目前的版本是2.0,这里我就不多做介绍了。下面贴一下我学习过程中参考的资料。理解OAuth 2.0——阮一峰Spring Security OAuth2 开发指南Spring Security Oauth2 自定义 OA...原创 2018-12-17 16:52:34 · 62056 阅读 · 104 评论 -
OAuth2.0系列一:微服务中的安全架构体系
OAuth2.0首先,需要明确一个概念,OAuth2并不是一个认证协议,它是一个授权框架,仅用于授权代理机制,用来授权第三方应用,获取用户数据。那么OAuth2到底是什么?下面通过一个例子了解一下。假设我在一个云存储服务上有一些文件,但是这个云存储服务没有打印功能,我想通过一个云打印服务来打印云存储服务上的文件,那么通过什么办法可以实现我这个需求呢?方式一:用户名密码复制通过这...原创 2019-09-11 11:11:45 · 895 阅读 · 0 评论 -
OAuth2.0系列二:OAuth2.0授权码模式
OAuth2.0授权模式OAuth2.0支持如下四种授权模式,其中安全级别最高的是授权码模式。我们先了解一下在代码中如何简单的实现四种授权模式,下一篇在介绍关于四种授权模式的选型。授权码 密码式 隐藏式 客户端凭证注意:不管通过哪种授权模式获取授权,第三方应用在获取授权之前,都必须在系统备案,拿到客户端ID(Client ID)和客户端密钥(Client Secret)后再通过OA...原创 2019-09-11 12:45:22 · 1814 阅读 · 2 评论 -
OAuth2.0系列三:OAuth2.0密码模式
密码模式如果你高度信任某个第三方应用,可以把用户名和密码告诉这个第三方应用,第三方应用拿到用户名和密码去申请授权获取令牌。在这种模式中,用户必须把自己的密码给客户端,但是客户端不得储存密码。这通常用在用户对客户端高度信任的情况下,比如客户端是操作系统的一部分,或者由一个著名公司出品。而认证服务器只有在其他授权模式无法执行的情况下,才能考虑使用这种模式。用户向第三方客户端提供用户名和密码...原创 2019-09-11 12:47:03 · 3187 阅读 · 2 评论 -
OAuth2.0系列四:OAuth2.0简化模式
简化模式有些纯前端应用,必须将令牌储存在前端。那么可以使用简化模式(隐藏式)来申请授权,颁发令牌。浏览器向授权服务器申请授权,并设置response_type=token,表示直接返回令牌 授权服务器通过校验后跳转到重定向地址并返回token 浏览器通过token去申请资源这种方式把令牌直接传给前端是很不安全的。因此,只能用于一些安全要求不高的场景,并且令牌的有效期必须非常短,通...原创 2019-09-11 13:17:30 · 2073 阅读 · 0 评论 -
OAuth2.0系列五:OAuth2.0客户端凭证
凭证模式客户端通过客户端的id和secret申请授权,这种方式给出的令牌,是针对第三方应用的,而不是针对用户的,即有可能多个用户共享同一个令牌。代码实战第一步,创建maven应用client_server,pom文件如下:<parent> <artifactId>microservice-parent</artifactId>...原创 2019-09-11 19:09:48 · 2610 阅读 · 0 评论 -
OAuth2.0系列六:OAuth2.0四种授权模式总结
授权模式总结前面几节已经通过代码介绍了OAuth2.0四种授权模式的简单使用,现在来总结一下四种授权模式的特点授权码模式通过前端渠道客户获取授权码 通过后端渠道,客户使用authorization code去交换access Token和可选的refresh token 假定资源拥有者和客户在不同的设备上 最安全的流程,因为令牌不会传递经过user-agent密码模式使用用...原创 2019-09-12 10:19:27 · 1691 阅读 · 0 评论