推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发

OAuth 2.0

后端初学者 2018-10-21

每天一篇好文章系列18年第217期

编者按   

背景介绍:

OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。


1


        


                                                                                                                       

















一、OAuth的思路



OAuth在"客户端"与"服务提供商"之间,设置了一个授权层(authorization layer)。"客户端"不能直接登录"服务提供商",只能登录授权层,以此将用户与客户端区分开来。"客户端"登录授权层所用的令牌(token),与用户的密码不同。用户可以在登录的时候,指定授权层令牌的权限范围和有效期。

"客户端"登录授权层以后,"服务提供商"根据令牌的权限范围和有效期,向"客户端"开放用户储存的资料。



02





二、运行流程

(A)用户打开客户端以后,客户端要求用户给予授权。

(B)用户同意给予客户端授权。

(C)客户端使用上一步获得的授权,向认证服务器申请令牌。

(D)认证服务器对客户端进行认证以后,确认无误,同意发放令牌。

(E)客户端使用令牌,向资源服务器申请获取资源。

(F)资源服务器确认令牌无误,同意向客户端开放资源。






03

三、客户端授权模式

客户端必须得到用户的授权(authorization grant),才能获得令牌(access token)。

OAuth 2.0定义了四种授权方式。

授权码模式(authorization code)

简化模式(implicit)

密码模式(resource owner password credentials)

客户端模式(client credentials)






: OAuth2.0是目前在目前很多系统应用中常见的授权方式,在大量的第三方授权系统中广泛使用,也在微服务系统鉴权时使用到。


OAuth 2.0

阮一峰博客《理解OAuth2.0


       ~


                   







版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《OAuth 2.0》的版权归原作者「后端初学者」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注后端初学者微信公众号

后端初学者微信公众号:gh_1f4f0a58943f

后端初学者

手机扫描上方二维码即可关注后端初学者微信公众号

后端初学者最新文章

精品公众号随机推荐