免费注册,打造高效身份管理
博客/开发者/OAuth2.0 有哪些授权方式?
OAuth2.0 有哪些授权方式?
Authing 官方2022.11.09阅读 1529

在这里插入图片描述
常见的单点登录有五种协议 OIDC、OAuth 2.0、SAML2、CAS 3.0、LDAP 等为标准认证协议。标准协议会按照特定的方式传递用户信息,正规的业务系统产品都会支持标准协议,使用标准协议对接可以一劳永逸地完成对接。

OAuth 是一种关于授权(Authorization)的开放网络标准,是目前最流行的授权机制,在客户与服务商之间,设置授权层。客户必须先登录授权层,此时服务商会向客户授权令牌的权限及使用期限,然后客户才能登录服务商,使用其服务。

目前最新的版本为 OAuth 2.0 版,主要有四个主体:

  • 授权服务器,负责颁发访问令牌(Access Token),Authing 是授权服务器。
  • 资源所有者,应用的用户是资源的所有者,授权其他人访问其资源。
  • 调用方,调用方请求获取访问令牌(Access Token),经过用户授权后,Authing 为其颁发访问令牌(Access Token)。调用方可以携带访问令牌(Access Token)到资源服务器访问用户的资源。
  • 资源服务器,接受访问令牌(Access Token),然后验证它的被赋予的权限项目,最后返回资源。

OAuth 2.0 有四种授权模式:

  1. 授权码(Authorization-code):指的是第三方应用先申请一个授权码,然后再用该码获取令牌。该方式是最常用的流程,安全性也最高,它适用于那些有后端的Web 应用。
  2. 隐藏式(Implicit):该模式面向纯前端应用,App 认证服务器只返还一次授权码。
  3. 密码式(Password):允许客户端或者第三方应用,直接使用用户的账号密码进行令牌的获取。该方式在用户端应用广泛。
  4. 凭证式(Client credentials):适用于没有前端的命令行应用,即在命令行下请求令牌。该方式操作简单,只需要发送客户请求,即可获得访问令牌(Access Token),但这种方式非常不安全,需要对客户端完全信任,且客户端本身需要具备安全性。

常见的 OAuth 2.0 授权流程如下:

  1. 在你的应用中,让用户访问登录链接,浏览器跳转到 Authing,用户在 Authing 完成认证。
  2. 浏览器接收到一个从 Authing服务器发来的授权码。
  3. 浏览器通过重定向将授权码附带在重定向地址后面。
  4. 你的应用服务将授权码发送到 Authing 获取AccessToken,如果需要,还会返回 refresh token。
  5. 你的应用后端现在知道了用户的身份,后续就可以保存用户信息,重定向到前端其他页面,使用 AccessToken 调用资源方的其他 API
    等等。

在这里插入图片描述

关于 Authing

Authing 既是客户的支持者也是客户的产品专家和战略顾问,更是值得信赖的合作伙伴。我们提供全球化的身份专家支持团队,通过网络或电话,7*24 小时不间断支持。Authing 的帮助中心提供最新的技术知识库、商业案例以及与您的同行和 Authing 专家联系的机会。无论您何时需要我们,Authing 的支持团队总能最快响应。
目前,Authing 身份云已帮助 30,000+ 家企业和开发者构建标准化的用户身份体系,感谢可口可乐、元气森林、招商银行、中国石油、三星集团、CSDN 等客户选择并实施 Authing 解决方案。

文章作者

avatar

Authing 官方

0

文章总数

authing blog rqcode
关注 Authing 公众号
随时随地发现更多内容
authing blog rqcode
添加 Authing 小助手
加入 Authing 开发者大家庭
身份顾问在线解答
当前在线
如何打造完整的身份体系?
立即沟通
authing
添加企业微信,领取行业资料
authing
authing
下载 Authing 令牌,体验快速登录认证!
免费使用
在线咨询
电话咨询