本指南介绍如何在 Cloudflare One 中将 Salesforce ↗ 配置为 OpenID Connect (OIDC) 应用程序。
- 在 Cloudflare One 中配置的身份提供商
- Salesforce 账户的管理员访问权限
- 在 Cloudflare 仪表板 ↗中,转到 Zero Trust > Access controls(访问控制)> Applications(应用程序)。
- 选择 Create new application(创建新应用程序)> SaaS application(SaaS 应用程序)。
- 对于 Application(应用程序),选择 Salesforce。
- 对于身份验证协议,选择 OIDC。
- 选择 Add application(添加应用程序)。
- 在 **Scopes(作用域)**中,选择您希望 Access 在 ID 令牌中发送的属性。
- 在 **Redirect URLs(重定向 URL)**中,输入从 Salesforce 获取的常规回调 URL(
https://<your-domain>.my.salesforce.com/services/authcallback/<URL Suffix>)。有关如何获取此值的说明,请参阅在 Salesforce 中添加 SSO 提供商。 - (可选)如果您的 IdP 支持该协议,请启用密钥交换证明 (PKCE) ↗。所有登录尝试都将执行 PKCE。
- 复制以下值:
- Client ID(客户端 ID)
- Client secret(客户端密钥)
- Authorization endpoint(授权端点)
- Token endpoint(令牌端点)
- User info endpoint(用户信息端点)
- 为应用程序配置 Access 策略。
- (可选)在 **Experience settings(体验设置)**中,通过开启 **Enable App in App Launcher(在 App Launcher 中启用应用)**并在 **App Launcher URL(应用启动器 URL)**中输入
https://<your-domain>.my.salesforce.com来配置 App Launcher 设置。 - 保存应用程序。
- 在 Salesforce 中,转到 Setup(设置)。
- 在 **Quick Find(快速查找)**框中,输入
auth并选择 Auth providers(身份验证提供商)。 - 选择 New(新建)。
- 对于提供商类型,选择 OpenID Connect。
- 输入 SSO 提供商的名称(例如
Cloudflare Access)。 - 使用从 Cloudflare Access 获取的值填写以下字段:
- Consumer Key(使用者密钥):Client ID
- Consumer Secret(使用者密钥):Client secret
- Authorize Endpoint URL(授权端点 URL):Authorization endpoint
- Token endpoint URL(令牌端点 URL):Token endpoint
- User Info Endpoint URL(用户信息端点 URL):User info endpoint
- Token Issuer(令牌签发者):Issuer
- (可选)如果在 Access 中启用了 PKCE,请启用 Use Proof Key for Code Exchange(使用代码交换的密钥证明)。
- 在 **Default Scopes(默认作用域)**中,输入在 Access 中配置的以空格分隔的 scopes 列表(例如
openid email profile groups)。 - 选择 Save(保存)。
- 复制 Callback URL(回调 URL):
https://<your-domain>.my.salesforce.com/services/authcallback/<URL Suffix> - 在 Cloudflare One 中,将 Callback URL 粘贴到 **Redirect URL(重定向 URL)**字段中。
要测试集成,请打开无痕浏览器窗口并转到 Test-Only Initialization URL(仅测试初始化 URL)(https://<your-domain>.my.salesforce.com/services/auth/test/<URL Suffix>)。
在您的 Salesforce 域名上启用 Cloudflare Access 作为身份提供商:
- 在 Quick Find(快速查找) 框中,输入
domain并选择 My Domain(我的域)。 - 在 Authentication Configuration 中,选择 Edit(编辑)。
- 在 Authentication Service 中,开启 Cloudflare Access 提供商。
- 在 Quick Find(快速查找) 框中,输入
- (可选)要求用户使用 Cloudflare Access 登录:
- 在 **Quick Find(快速查找)**框中,输入
single sign-on并选择 Single Sign-On Settings(单点登录设置)。 - 开启 Disable login with Salesforce credentials(禁用使用 Salesforce 凭据登录)。
- 在 **Quick Find(快速查找)**框中,输入
要测试,请打开无痕浏览器窗口并转到您的 Salesforce 域名 (https://<your-domain>.my.salesforce.com)。