---
schema_version: "1"
id: 1de3ef8b32f6bb6447f9b177b93b185f0eb226edca9d25ca5c292db75ad00803
title: 将 Salesforce.com OAuth 更改为已保存凭据
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/server/config_oauth_sfdc.md
canonical_url: https://help.tableau.com/current/server/zh-cn/config_oauth_sfdc.htm
source_site: help.tableau.com
content_type: documentation
content_hash: d04668ec25ec94468e9e124cb8ba317f1ea1b29113414f6a3c13322f924b01f9
description: Configure Salesforce.com OAuth with saved client ID and secret credentials on Tableau Server.
---
[跳转到主要内容](#main-content)

# 将 Salesforce.com OAuth 更改为已保存凭据

默认情况下，对于由数据提供程序为 Tableau Server 生成并由同一站点中的所有用户共享的 OAuth 令牌，Salesforce.com 连接器使用托管密钥链。您可以使用保存的客户端 ID 和客户端密文配置 Tableau Server。在以下三种情况下，您可能需要执行此操作：

- **Salesforce 连接器** — 如果您正在使用 Salesforce 连接器，您可以使用 OAuth 客户端 ID 和密文配置 Tableau Server，以便连接器可以使用已保存的凭据。
- **写入 CRM Analytics** — 如果您正在将 Tableau Prep 流程数据写入 Salesforce CRM Analytics（版本 2022.3 及更高版本），请使用 Oauth 客户端 ID 和密码配置 Tableau Server，以便流程可以使用保存的凭据在 Tableau Server 中运行。
- **Einstein Discovery** — 如果您要将 Einstein Discovery 扩展程序与 Tableau Server 集成，则需要执行此 Oauth 客户端 ID 和密文配置。在版本 2021.1.0 中添加了集成 Einstein Discovery 和 Tableau Server 的功能。有关详细信息，请参见[配置 Einstein Discovery 集成](https://help.tableau.com/current/server/zh-cn/config_einstein_extensions.htm)。

本主题介绍如何针对 Oauth 已保存凭据设置 Salesforce.com 数据源和 Einstein Discovery 扩展程序。为每个 Tableau Server 实例完成这些步骤。

有关托管密钥链和已保存凭据的详细信息，请参见[OAuth 连接](https://help.tableau.com/current/server/zh-cn/protected_auth.htm)。

**注意：** 

- Salesforce 连接器需要托管密钥链（默认值）、服务器范围的 OAuth 或特定于站点的 OAuth。
- 若要为站点使用保存的凭据，必须首先配置服务器范围的 OAuth。
- 无论是否配置了站点范围的 OAuth，都可以使用服务器范围的 OAuth。
- 如果使用特定于站点的 OAuth，则必须单独配置每个站点。
- 若要支持实时连接提示、编辑连接和 Web 制作，请将托管密钥链转换为保存的凭据以避免错误。

### 步骤总结

通过执行以下常规步骤来设置 OAuth：

1. 通过在 Salesforce 中创建外部客户端应用（推荐）或已连接应用（已弃用）来配置应用程序集成。
2. 使用您在步骤 1 中获得的信息来配置 Tableau Server。
3. （可选）配置特定于站点的 OAuth。

## 步骤 1：在 Salesforce 中配置应用集成

若要实现 Tableau 与 Salesforce 的集成，您必须首先在 Salesforce 中配置应用程序集成。我们强烈建议使用外部客户端应用。如果可用，您可以使用 Salesforce 已连接应用。

### Salesforce 外部客户端应用（推荐）

自 2026 年春季起 ，Salesforce 外部客户端应用是下一代连接应用，建议用于实现 Tableau 与 Salesforce 的集成。

1. 登录您的 Salesforce.com 开发人员帐户，在页面右上角单击您的用户名，然后选择“Setup”（设置）。
2. 在左侧导航窗格中的“Apps”（应用）下，选择“App Manager”（应用管理器）。
3. 在 Lightning Experience App Manager 中，单击“New External Client App”（新建外部客户端应用）。
4. 在“External Client App Manager”（外部客户端应用管理器）中，配置步骤 2 中所需的客户密钥、客户密文和回调 URL。
5. 单击“Create”（创建）。
6. 创建应用后，选择“Settings”（设置）选项卡。
7. 在 OAuth 设置中检查“Consumer Key”（使用者密钥）和“Secret”（密文）。

完成后，转到**“步骤 2：针对 Salesforce.com OAuth 配置 Tableau Server”**。

有关创建外部客户端应用程序的详细信息，请参见 Salesforce 帮助中的[创建外部客户端应用](https://help.salesforce.com/s/articleView?id=xcloud.create_a_local_external_client_app.htm&type=5) 。

### Salesforce 已连接应用（已弃用）

> [!WARNING]
> 
> **重要信息：**从 Salesforce 的 2026 年春季版本开始，已连接应用的创建受到限制。您可以在 2026 年春季期间和之后继续使用现有的已连接应用，但强烈建议使用外部客户端应用。有关详细信息，请参见 Salesforce 帮助中的以下内容：[在 2026 年春季无法再创建新的已连接应用](https://help.salesforce.com/s/articleView?id=005228017)、[创建外部客户端应用](https://help.salesforce.com/s/articleView?id=xcloud.create_a_local_external_client_app.htm&type=5)和[已连接应用向外部客户端应用迁移](https://help.salesforce.com/s/articleView?id=xcloud.connected_app_to_external_client_app_migration.htm&type=5)。

**注意：**此程序记录了 Salesforce Lightning 中的过程。如果您使用的是传统界面，导航可能会有所不同，但配置是相同的。

1. 登录您的 Salesforce.com 开发人员帐户，单击右上方您的用户名，然后选择“设置”。
2. 在左侧导航窗格中的“应用”下，搜索“外部客户端应用”，然后选择“外部客户端应用设置”。
3. 单击“新建已连接应用”。
4. 在“Basic Information”（基本信息）中，为应用指定一个名称，按 Tab 键浏览 api 字段便其以正确的格式自行填充，并为应用输入联系人电子邮件。
5. 在“API \[Enable Oauth Settings\]”（API \[启用 Oauth 设置\]）部分，选择“Enable OAuth Settings”（启用 Oauth 设置）。
6. 在出现的新 OAuth 设置中，对于“回调 URL”，键入您的服务器的完全限定域名（使用 `https` 协议），并将以下文本追加到 URL：`auth/add_oauth_token`。
    
    例如：
    
    `https://www.your_tableau_server.com/auth/add_oauth_token`
7. 将下列项目从“Available OAuth Scopes”（可用 OAuth 范围）移到“Selected OAuth Scopes”（所选 OAuth 范围）：
    
    - 访问身份 URL 服务（ID、个人资料、电子邮件、地址、电话）
    - 通过 API (api) 管理用户数据
    - 随时执行请求（refresh\_token、离线访问）
8. 单击“保存”。

在保存应用后，Salesforce 会在 API 部分中填充以下将用于配置 Tableau Server 的 ID：

- 使用者密钥
- 使用者密码
- 回调 URL

## 步骤 2：针对 Salesforce.com OAuth 配置 Tableau Server

启用 Tableau 与 Salesforce 的集成并拥有客户密钥、客户密文和回调 URL 后，您可以为 Salesforce 数据连接和输出以及 Einstein Discovery 配置 Tableau Server。

1. 在 Tableau Server 计算机上的命令提示符处，运行以下命令：
    
    `tsm configuration set -k oauth.salesforce.client_id -v <your_customer_key>`
    
    `tsm configuration set -k oauth.salesforce.client_secret -v <your_customer_secret>`
    
    `tsm configuration set -k oauth.salesforce.redirect_uri -v <your_redirect_URL>`
2. （可选）要更改默认登录服务器，请键入以下命令：
    
    `tsm configuration set -k oauth.salesforce.server_base_url -v <URL>`
3. 输入以下命令以应用更改：
    
    `tsm pending-changes apply`
    
    如果待定更改需要重新启动服务器，`pending-changes apply` 命令将显示一个提示，告知您将进行重新启动。即使服务器已停止，此提示也会显示，但在这种情况下不会重新启动。您可以使用 `--ignore-prompt` 选项隐藏提示，但这样做不会改变重新启动行为。如果更改不需要重新启动，则会在不提示的情况下应用更改。有关详细信息，请参见[tsm pending-changes apply](https://help.tableau.com/current/server/zh-cn/cli_pending-changes.htm#pending-changes-apply)。

## 为站点配置自定义 OAuth

您可以为站点配置自定义 Salesforce OAuth 客户端。

考虑将自定义 OAuth 客户端配置为 1) 覆盖 OAuth 客户端（如果为服务器配置）或 2) 支持安全连接到需要唯一 OAuth 客户端的数据。

配置自定义 OAuth 客户端时，站点级别配置优先于任何服务器端配置，并且默认情况下创建的所有新 OAuth 凭据都使用站点级别 OAuth 客户端。无需重新启动 Tableau Server 即可使配置生效。

**重要信息：**在配置自定义 OAuth 客户端之前建立的现有 OAuth 凭据暂时可用，但服务器管理员和用户都必须更新他们保存的凭据以帮助确保不间断的数据访问。

### 1：准备 OAuth 客户端 ID、客户端密文值和重定向 URL

在配置自定义 OAuth 客户端之前，您需要下列信息。准备好这些信息后，您可以为站点注册自定义 OAuth 客户端。

- **OAuth 客户端 ID 和客户端密文值：**首先向数据提供程序（连接器）注册 OAuth 客户端，以检索为 Tableau Server value生成的客户端 ID 和密码。
- **重定向 URL：**注意正确的重定向 URL。在下面**步骤 2** 的注册过程中，您将需要此 URL。
    
    Https://<您的服务器名称>.com/auth/add\_oauth\_token
    
    例如，https://example.com/auth/add\_oauth\_token

### 2：注册 OAuth 客户端 ID 和客户端密文

按照下面描述的过程将自定义 OAuth 客户端注册到站点。

1. 使用管理员凭据登录到 Tableau Server 站点，并导航到“设置”页面。
2. 在“OAuth 客户端注册”下，单击“添加 OAuth 客户端”按钮。
3. 输入所需信息，包括上述**步骤 1** 中的信息：
    
    1. 对于“连接类型”，选择要配置其自定义 OAuth 客户端的连接器。
    2. 如果注册多个 OAuth 客户端，则“OAuth 实例 URL”为必填。否则，它是可选的。
    3. 对于“客户端 ID”、“客户端密文”和“重定向 URL”，输入您在上面的**步骤 1** 中准备的信息。
    4. 单击“添加 OAuth 客户端”按钮以完成注册过程。
    
    ![用于创建 OAuth 客户端的表单，包括连接类型、OAuth 实例 URL、客户端 ID、客户端密文和重定向 URL 字段。](/tableau/current/zh-cn/server/zh-cn/Img/oauth_custom.png)
4. （可选）对所有支持的连接器重复步骤 3。
5. 单击“设置”页面底部或顶部的“保存”按钮以保存更改。

### 3：验证和更新保存的凭据

为帮助确保不间断的数据访问，您（和您的站点用户）必须删除之前保存的凭据并再次添加，以便为站点使用自定义 OAuth 客户端。

1. 导航到“我的帐户设置”页面。
2. 在“保存的数据源凭据”下，执行以下操作：
    
    1. 单击您在上述**步骤 2** 中配置的自定义 OAuth 客户端的连接器的现有已保存凭据旁边的“删除”。
    2. 在连接器名称旁边，单击“添加”并按照提示进行操作以 1) 连接到在上述**步骤 2** 中配置的自定义 OAuth 客户端，以及 2) 保存最新的凭据。

### 4：通知用户更新他们保存的凭据

确保通知您的站点用户更新他们为连接器保存的凭据，该连接器的自定义 OAuth 客户端是您在上面的**步骤 2** 中配置的。站点用户可以使用[更新保存的凭据](https://help.tableau.com/current/server/zh-cn/manage_stored_credentials.htm#oauth_update_credentials)中描述的过程来更新他们保存的凭据。

## 管理访问令牌

针对 OAuth 配置服务器之后，您可以允许用户在其配置文件设置中管理其自己的访问令牌，或者您可以集中管理这些令牌。有关详细信息，请参见[允许已保存访问令牌](https://help.tableau.com/current/server/zh-cn/allow_saved_tokens.htm)。

## 用于 OAuth 身份验证的转发代理

有关为 Tableau Server（仅限 Windows）设置具有 OAuth 身份验证的转向代理的详细信息，请参见 Tableau 帮助中的[为 OAuth 身份验证配置转发代理](https://help.tableau.com/current/pro/desktop/zh-cn/config_proxy_oauth.htm#server)。