使用 OAuth 授权应用程序
OAuth 是一种开放协议,它授权客户端应用程序通过标记交换从受保护的资源访问数据。OAuth 标记本质上是授予客户端应用程序的权限。
所需的 Edition
| 适用于 Salesforce Classic 和 Lightning Experience |
| 适用于:所有版本 |
资源服务器可以验证标记,并允许客户端应用程序访问定义的受保护资源。在 Salesforce 中,您可以使用 OAuth 授权来批准客户端应用程序对组织受保护资源的访问。
重要 您不能独立使用 OAuth 来验证用户身份。相反,除了 OAuth 授权之外,还可以使用 OpenID Connect 作为身份验证服务。
- OAuth 授权流
Oauth 授权流授予客户端应用程序对资源服务器上受保护资源的受限访问权限。每个 Oauth 流都提供了不同的流程来批准对客户端应用程序的访问,但一般来说,流由三个主要步骤组成。要启动授权流,客户端应用程序会请求访问受保护的资源。作为响应,授权服务器向客户端应用程序授予访问标记。然后,资源服务器验证这些访问标记,并批准对受保护资源的访问。 - 生成前门 URL 桥接到 UI 会话中
要授予用户对 Salesforce 和其他应用程序的不间断访问权限,请使用现有会话自动将用户登录到新 UI,而无需让他们再次输入凭据。例如,将用户从自定义应用程序重定向到 Salesforce 中的特定记录。要从一个会话桥接到另一个会话,请使用单点访问 UI 桥 API(简称 UI 桥 API)。使用此 API,将访问令牌交换为您用于加载新会话的前门 URL。您还可以指定重定向 URI,当用户的新会话开始时,将发送该 URI。 - 代码交换验证密钥 (PKCE) 扩展
要提高 OAuth 和身份验证提供商实施的安全性,请使用 OAuth 2.0 代码交换验证密钥 (PKCE) 扩展。您可以在组织范围级别要求使用 PKCE,要求特定的已连接应用程序使用它,并为支持的身份验证提供商自动启用它。 - Oauth 标记和范围
Oauth 标记授权对受保护资源的访问。授权后,连接的应用程序代表客户端接收标记。范围进一步定义了连接的应用程序可以访问的受保护资源的类型。当您构建连接的应用程序时,您可以为它分配范围,并且它们在授权流程中包含在 OAuth 标记中。 - 访问令牌
访问令牌是 Salesforce API 的密钥。当客户端成功完成授权流时,无论是标准 OAuth 2.0 流还是无头身份流,Salesforce 都会发布可用于访问受保护的 Salesforce 数据的访问令牌。Salesforce 支持两种访问令牌:不透明令牌和基于 JSON Web 令牌 (JWT) 的访问令牌。根据您的用例,每种类型都有自己的优点和局限性。 - 撤销 Data Cloud 访问令牌
撤销 Data Cloud 访问令牌,以删除客户端对 Salesforce Data Cloud 数据的访问权限。 - OAuth 自定义范围
外部客户端应用程序可以使用 OAuth 授权协议来访问受保护的资源。作为协议的一部分,OAuth 默认范围微调应用程序访问 Salesforce 中受保护资源的权限。但是,当外部实体托管受保护资源时,这些默认范围是不够的。在这种情况下,Salesforce 扮演 OAuth 身份验证和授权提供者的角色,但它对所保护的资源知之甚少。要定义外部客户端应用程序访问外部实体托管的受保护资源的权限,请创建 OAuth 自定义范围。自定义范围告诉外部实体外部客户端应用程序被授权访问哪些信息。 - 身份 URL
身份 URL 是 Salesforce 身份服务的网关,可以使用 OAuth 2.0 用户代理或网络服务器流进行访问。在这些流中,当成功授权具有id范围的已连接应用程序时,它会收到身份 URL 以及访问令牌。然后,连接的应用程序可以向身份 URL 发送带有访问标记的 GET 请求。作为响应,Salesforce 会返回有关所查询用户和组织的详细信息。 - OAuth 端点
OAuth 端点是用于向 Salesforce 进行 Oauth 授权请求的 URL。每个 OAuth 流定义使用哪些端点以及提供哪些请求数据。 - OAuth 2.0 Echo 端点
为公共客户端(例如单页应用程序)配置授权代码和凭据流时,使用 OAuth 2.0 Echo 端点可以简化开发。您还可以将此端点用于授权代码和凭证流的变体,包括无头注册、无密码登录和来宾用户流。 - 为 OAuth 端点启用 CORS
Web 应用程序使用跨来源资源共享 (CORS) 从不同于自己的来源请求资源。例如,网页可以使用 CORS 向您的 My Domain 登录 URL 或 Experience Cloud 站点 URL 请求有关用户的信息。除了公共和允许的网页之外,当 My Domain 登录 URL 或 Experience Cloud 站点 URL 提出请求时,Salesforce 还为某些 OAuth 端点提供 CORS 支持。 - 用户信息查询
连接的应用程序可以向 UserInfo 端点查询与连接的应用程序的访问标记相关联的用户的信息。Salesforce 返回关于用户的基本个人信息,以及连接的应用程序可与其对话的重要端点,如用户的照片和其可访问的 API 端点。此用户信息端点仅为当前用户提供信息的访问权限。不会为组织中的内容用户授予访问权限。 - OpenID Connect 配置查询
使用 OpenID Connect 发现端点,以查询有关 Salesforce OpenID Connect 配置的信息。Salesforce 返回关于端点、支持的范围和用于 OpenID Connect 验证的其他值的基本信息。 - 查询 SAML 身份验证设置
您可以查询身份验证配置端点,以获取有关组织或 Experience Cloud 站点的 SAML 单点登录 (SSO) 和身份验证提供商设置的信息。当您开发需要这些信息的应用程序时,请使用此功能。
另请参阅:
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!

