Authing 文档文档
快速开始
概念
使用指南
开发集成 arrow
  • V2 文档
  • V3 文档
元数据
应用集成
身份自动化
加入 APN
开发集成
多租户(内测版)
控制台文档
多租户控制台
租户控制台
Saas 应用 Demo
快速开始
概念
使用指南
开发集成 arrow
  • V2 文档
  • V3 文档
元数据
应用集成
身份自动化
加入 APN
开发集成
多租户(内测版)
控制台文档
多租户控制台
租户控制台
Saas 应用 Demo
旧版
使用指南
  • 快速开始

  • 对用户进行认证

  • 对用户进行权限管理

  • 用户自助服务

  • 授权

  • 自适应 MFA

  • 管理用户账号

  • 管理用户目录

  • 同步中心

  • 应用

    • 自建应用

      • 创建自建应用
      • 快速开始
      • 应用配置
      • 协议配置

        • 配置 OIDC 协议
        • 自定义 OIDC Scope
        • 配置 OAuth 协议
        • 配置 SAML 协议
        • 配置 CAS 协议
      • 登录控制
      • 访问授权
      • 品牌化
      • 安全管理
      • 高级配置
      • 租户配置
    • 单点登录 SSO

  • 成为联邦认证身份源

  • 连接外部身份源(IdP)

  • 微信生态全场景能力

  • 迁移用户到 Authing

  • 管理组织机构

  • 安全设置

  • 品牌化

  • 自动化

  • 审计日志

  • 设置

  • Authing 令牌
  • 私有化部署方案

  • 常见问题 FAQ

  1. 使用指南
  2. /
  3. 应用
  4. /
  5. 自建应用
  6. /
  7. 协议配置
  8. /
  9. 配置 OAuth 协议

¶ 成为 OAuth 2.0 身份源

更新时间: 2025-02-18 09:00:47
编辑

本文介绍如何让 Authing 成为 OAuth2.0 身份源,其他系统可以通过 OAuth2.0 协议接入 Authing 作为身份提供商。

OAuth2.0 协议有以下几种授权模式,分别是授权码模式、隐式模式、密码模式。成为 OAuth2.0 身份源后,其他应用可以使用相应模式的流程完成用户的认证与授权。

你可以在这里深入理解 OAuth 2.0 协议。

¶ 创建应用

为了让你的应用具备身份认证能力,你需要在 Authing 创建一个应用,名称建议填写你的实际应用项目的名称,进入控制台 > 应用 > 应用列表,点击创建应用:

填写你的应用名称,例如:网络笔记项目,为你的项目指定一个认证地址,将来你的用户会在这个地址完成认证。回调链接填写你的项目后端路由,Authing 会将用户信息(确切地说是一个授权码 code)发送到这个地址。最后点击创建。

找到你的应用,进入「启用身份提供商」选项卡。

在下方的「OAuth2.0 身份提供商」卡片中,打开启用 OAuth2.0 Provider 开关,然后点击保存。

¶ 授权码模式

如果你的应用项目有后端服务,能够安全存储密钥,建议使用授权码模式。

首先在控制台 > 应用,找到你的应用,进入应用详情,进入「启用身份提供商」选项卡,在下方的「OAuth2.0 身份提供商」卡片中,授权模式勾选 authorization_code,然后点击保存。

整体上,有以下流程。

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

流程图如下:

查看接入文档。

¶ 隐式模式

如果你的应用是一个 SPA 前端应用,不具备后端服务,建议使用隐式模式来完成用户的认证和授权。隐式模式适合不能安全存储密钥的场景(例如前端浏览器)。在隐式模式中,应用不需要使用 code 换 token,无需请求 /token 端点,AccessToken 会直接从认证端点返回。

首先在控制台 > 应用,找到你的应用,进入应用详情,进入「启用身份提供商」选项卡,在下方的「OAuth2.0 身份提供商」卡片中,授权模式勾选 implicit,然后点击保存。

整体上,有以下流程。

  1. 在你的应用中,让用户访问登录链接,浏览器跳转到 Authing,用户在 Authing 完成认证。
  2. Authing 将浏览器重定向到你的应用回调地址,AccessToken 作为 URL hash 传递。
  3. 你的应用从 URL 中取出 token。
  4. 你的应用可以将 AccessToken 保存,以便后续使用,例如使用 AccessToken 获取用户信息,携带 AccessToken 访问资源服务器。

流程图如下:

查看接入文档。

¶ 密码模式

不推荐使用此模式,尽量使用其他模式。只有其他模式都无法解决问题时才会考虑使用密码模式。如果使用密码模式,请确保你的应用代码逻辑非常安全,不会被黑客攻击,否则将会直接泄露用户的账密。一般用于改造集成非常古老的应用,否则绝对不要把它作为你的第一选择。

首先在控制台 > 应用,找到你的应用,进入应用详情,进入「启用身份提供商」选项卡,在下方的「OAuth2.0 身份提供商」卡片中,授权模式勾选 password,然后点击保存。

整体上,有以下流程。

  1. 你的应用让用户输入账密信息。
  2. 你的应用将用户账密发送到 Authing。
  3. 如果账密正确,Authing 返回 token。

流程图如下:

查看接入文档。

上一篇: 自定义 OIDC Scope 下一篇: 配置 SAML 协议
  • 创建应用
  • 授权码模式
  • 隐式模式
  • 密码模式

用户身份管理

集成第三方登录
手机号闪验 (opens new window)
通用登录表单组件
自定义认证流程

企业内部管理

单点登录
多因素认证
权限管理

开发者

开发文档
框架集成
博客 (opens new window)
GitHub (opens new window)
社区用户中心 (opens new window)

公司

400 888 2106
sales@authing.cn
北京市朝阳区北辰世纪中心 B 座 16 层(总)
成都市高新区天府五街 200 号 1 号楼 B 区 4 楼 406 室(分)

京ICP备19051205号

beian京公网安备 11010802035968号

© 北京蒸汽记忆科技有限公司