跳到主要内容
Didit 融资 750 万美元,打造身份与欺诈基础设施
Didit
返回博客
博客 · 2026年3月25日

开放互联身份验证:开发者指南 (ZH)

了解开放互联 (OIDC) 如何在 OAuth 2.0 的基础上,提供一种安全且标准化的方式来验证用户身份并获取身份数据。本指南涵盖声明、流程和实施细节。.

作者:Didit更新于
openid-connect-identity-data.png

开放互联身份验证:开发者指南

在当今互联的数字环境中,安全管理用户身份至关重要。虽然 OAuth 2.0 在授权方面表现出色——允许应用程序代表用户访问资源——但它本身并不提供关于用户的信息。 这就是开放互联 (OIDC) 发挥作用的地方。OIDC 是构建在 OAuth 2.0 之上的身份层,提供了一种标准化的方式来验证用户身份并获取基本的个人资料信息。本指南将深入探讨开放互联的核心概念、优势以及开发人员的实践实施注意事项。

主要收获

OIDC 构建于 OAuth 2.0 之上: OIDC 利用 OAuth 2.0 框架进行身份验证和授权,并增加了一个身份层。

身份令牌 (ID Tokens): 基于 JWT 的 ID 令牌安全地传输经过验证的用户身份数据。

声明: OIDC 使用“声明”来表示用户信息的片段,并进行标准化以实现互操作性。

标准化流程: OIDC 定义了针对不同应用程序类型(Web、移动、原生)的几种流程,以简化集成。

什么是开放互联?

开放互联 (OIDC) 是 OAuth 2.0 授权框架之上的身份验证层。它为应用程序提供了一种标准化的方法,可以根据授权服务器执行的身份验证来验证最终用户的身份。 重要的是,OIDC 引入了ID 令牌的概念,这是一种 JSON Web 令牌 (JWT),其中包含关于经过身份验证的用户的声明。这些声明提供重要的身份数据,例如用户的姓名、电子邮件地址和个人资料图片。与授予资源访问权限的 OAuth 2.0 访问令牌不同,ID 令牌专门设计用于断言用户身份。

可以将 OAuth 2.0 视为解锁门的钥匙(访问资源),而 OIDC 则是证明您身份的徽章,然后才能获得钥匙。如果没有 OIDC,应用程序只知道用户已获得授权;有了 OIDC,它就知道是该用户。

了解 OIDC 声明

声明是 OIDC 中身份数据的基础构建块。它们是关于用户的陈述,例如他们的姓名、电子邮件或地址。OIDC 定义了一组标准声明,以确保不同身份提供者 (IdP) 和应用程序之间的互操作性。常用的声明包括:

  • sub:主题标识符——用户的唯一 ID。
  • name:用户的全名。
  • given_name:用户的名字。
  • family_name:用户的姓氏。
  • email:用户的电子邮件地址。
  • picture:用户个人资料图片的 URL。
  • aud:受众——接收 ID 令牌的客户端 ID。
  • iss:颁发者——颁发 ID 令牌的授权服务器的 URL。
  • exp:过期时间——ID 令牌失效的时间戳。

应用程序可以在身份验证过程中请求特定的声明。然后,IdP 会仅在 ID 令牌中包含请求的声明,从而最大限度地减少共享的信息量。 也可以定义自定义声明,但强烈建议使用标准化声明以获得最大的兼容性。

OIDC 流程:带有 PKCE 的授权码流程

OIDC 支持几种流程,每种流程都针对不同的应用程序类型量身定制。对于现代 Web 应用程序来说,最常见且推荐的流程是带有代码交换证明密钥 (PKCE) 的授权码流程。此流程提供了针对授权码拦截攻击的增强安全性。

这是一个简化的概述:

  1. 应用程序生成一个代码验证器和一个代码挑战。
  2. 应用程序将用户重定向到带有代码挑战的授权服务器。
  3. 用户使用授权服务器进行身份验证。
  4. 授权服务器将用户重定向回应用程序,并附带一个授权码。
  5. 应用程序将授权码和代码验证器交换为 ID 令牌和访问令牌。
  6. 应用程序验证 ID 令牌,并使用声明来识别用户。

将 OIDC 与 Didit 集成

Didit 通过一个全面的平台和开发者友好的 API,简化了 OIDC 集成。我们的平台处理 OIDC 的复杂性,让您可以专注于构建应用程序。 关键功能包括:

  • 预构建的 OIDC 连接器:无缝集成流行的身份提供者,如 Google、Facebook 和 Microsoft。
  • 可定制的声明:请求针对您的应用程序需求定制的特定声明。
  • 安全的令牌验证:自动验证 ID 令牌以确保其真实性。
  • 工作流编排:构建包含 OIDC 身份验证的自定义身份流程。

通过 Didit,开发人员可以快速而安全地将 OIDC 身份验证实现到他们的应用程序中,从而减少开发时间并提高安全性。

Didit 如何提供帮助

Didit 提供了一个全栈身份平台,可简化开放互联的复杂性。我们负责 OIDC 实现的繁重工作,让开发人员能够:

  • 缩短开发时间:预构建的连接器和直观的 API 可加速集成。
  • 增强安全性:安全的令牌验证和 PKCE 支持可防止常见攻击。
  • 改善用户体验:无缝的身份验证流程可最大限度地减少用户的摩擦。
  • 自信地扩展:Didit 的平台旨在处理大量的身份验证请求。

准备好开始了吗?

准备好利用开放互联的力量并简化应用程序的身份验证流程了吗?

注册免费的 Didit 帐户并访问Didit 文档了解我们的全面文档。立即开始构建安全且可扩展的应用程序!

常见问题解答

OAuth 2.0 和开放互联有什么区别?

OAuth 2.0 是一种授权框架,允许应用程序代表用户访问资源。开放互联是构建在 OAuth 2.0 之上的身份层,提供了一种标准化的方式来验证用户身份并获取身份数据。

什么是 ID 令牌?

ID 令牌是一种 JSON Web 令牌 (JWT),其中包含关于经过身份验证的用户的声明。它由授权服务器在成功身份验证后颁发,并由应用程序用于识别用户。

OIDC 中的声明是什么?

声明是关于用户的陈述,例如他们的姓名、电子邮件地址和个人资料图片。OIDC 定义了一组标准声明,以确保不同身份提供者和应用程序之间的互操作性。

OIDC 安全吗?

是的,如果正确实施,OIDC 是一种安全的协议。带有 PKCE 的授权码流程是现代 Web 应用程序的推荐流程,因为它提供了针对授权码拦截攻击的增强安全性。使用可信的身份提供者并验证 ID 令牌对于安全性至关重要。

身份与欺诈基础设施。

一个 API 即可实现 KYC、KYB、交易监控和钱包筛选。5 分钟即可集成。

让 AI 总结此页面
开放互联身份验证指南.