OAuth2.0 授权方式及步骤梳理总结
Posted Sol·wang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OAuth2.0 授权方式及步骤梳理总结相关的知识,希望对你有一定的参考价值。
OAuth 2.0授权协议使第三方应用程序可以通过协调资源所有者和HTTP服务之间的批准交互,或者通过允许第三方应用程序代表资源所有者来获得对HTTP服务的有限访问权,或者代表资源所有者。 代表自己获取访问权限。通常的授权方式分为以下四种:
一、Authorization_Code_Grant [授权码方式] (最完整方式,针对用户的授权) 【常用】
1、发起申请授权 | 2、用户确认授权 | 3、申请Token | 4、过期取新Token | 5、取OpenID |
通过授权链接 > 跳转认证页面 | 用户登录 > 返回授权码 | 通过授权码申请Token > 返回Token(附带refresh_token) | 依据refresh_token 取新Token | 透过Token取OpenID |
参考流程图如下:(图片来源:draft-ietf-oauth-v2-31 4.1 )
二、Implicit_Grant [授权码缺省方式] (可纯前端方式,针对用户的授权) 【常用】
1、发起申请授权 | 2、用户确认授权 | 4、过期取新Token | 5、取OpenID |
通过授权链接 > 跳转认证页面 | 用户登录 > 返回Token(附带refresh_token) | 依据refresh_token 取新Token | 透过Token取OpenID |
参考流程图如下:(图片来源:draft-ietf-oauth-v2-31 4.2 )
三、Client_Credentials [平台凭证方式] (可纯后端方式,针对平台的授权,多用户共享) 【少见】
1、发起申请 | 4、过期取新凭证 |
平台发起申请 > 返回给平台凭证 | 凭证过期 取新凭证 |
参考流程图如下:(图片来源:draft-ietf-oauth-v2-31 4.4 )
四、Password_Credentials [密码凭证方式] (充分信任的双方) 【特殊场景】
适用于双方有充分信任关系的情况,例如其操作系统或高特权的应用程序。授权服务器在启用此种授予类型时应当注意,只有在其它授权方式不可能时,再考虑此种授权类型。
首先,用户在平台登录页输入登录凭证,平台依据用户输入的登录凭证信息(通常为账号密码)向授权服务器发起Token申请。授权服务器Response Token。它还用于通过将存储的凭据转换为访问令牌,使用HTTP Basic或Digest身份验证等直接身份验证方案将现有客户端迁移到OAuth。
1、平台登录 | 2、认证授权 | 4、过期取新Token |
用户登录 > 发起申请 | 认证并返回Token(附带refresh_token) | 依据refresh_token 取新Token |
参考流程图如下:(图片来源:draft-ietf-oauth-v2-31 4.3 )
有误必究,欢迎指出,持续更新,万分感谢,共同学习。
以上是关于OAuth2.0 授权方式及步骤梳理总结的主要内容,如果未能解决你的问题,请参考以下文章