内容:

为 Salesforce CDP 设置 OAuth

  • 版本 :2022.1 及更高版本

本主题介绍如何针对 OAuth 身份验证设置 Salesforce CDP 数据源。为每个 Tableau Server 实例完成这些步骤。

本主题介绍如何针对 OAuth 身份验证设置 Salesforce CDP 数据源。为每个 Tableau Server 实例完成这些步骤。

在 Tableau Server 中使用 Salesforce CDP 数据需要执行本主题中描述的步骤。更具体地说,这些步骤使您的用户能够按照 Salesforce 帮助中的说明在 Tableau 中使用 Salesforce CDP 数据,将基于 Salesforce CDP 的工作簿和数据源发布到 Tableau Server,并使 Salesforce CDP 数据保持最新。

为 Salesforce CDP 设置 OAuth 的过程包含以下任务:

  1. 配置 Salesforce CDP API 以允许查询 Salesforce CDP 数据(数据出口)。

  2. 创建一个 Salesforce 已连接应用以处理来自 Tableau Server 的 OAuth 委派。

  3. 针对 Salesforce CDP OAuth 配置 Tableau Server。

  4. (可选)配置特定于站点的 OAuth。

步骤 1:配置 Salesforce CDP API

使用 Salesforce 帮助中设置已连接应用(链接在新窗口中打开)中描述的过程来配置 Salesforce CDP API,以启用对 Salesforce CDP 数据的查询(数据出口)。该过程将描述如何创建两个自定义 Salesforce CDP API 范围,即 cdpquerycdpprofile

步骤 2:创建 Salesforce 已连接应用

创建 Salesforce CDP API 范围后,使用以下过程创建 Salesforce 已连接应用,以处理来自 Tableau Server 的 OAuth 委派。

  1. 以管理员身份登录您的 Salesforce CDP 帐户,单击右上方您的用户名,然后选择“Setup”(设置)

  2. 在左侧窗格中的“Apps”(应用)下,选择“App Manager”(应用管理器)

  3. 在“Connected Apps”(已连接应用)部分,单击“New Connected App”(新建已连接应用)

  4. “Basic Information”(基本信息)中,为已连接应用指定一个名称(例如,Example.com),按 Tab 键浏览 API 字段使其以正确的格式自行填充,并为应用输入联系人电子邮件地址。

  5. “API [Enable Oauth Settings]”(API [启用 Oauth 设置])部分,选择“Enable OAuth Settings”(启用 Oauth 设置),然后执行以下操作:

    • 通过 API (api) 管理用户数据

    • 随时代表您执行请求(refresh_token、offline_access)

    1. 在出现的新 OAuth 设置中,对于“Callback URL”(回调 URL),键入您的 Tableau Server 的完全限定域名 (FQDN)(使用 https 协议),并将以下文本追加到 URL:/auth/add_oauth_token

      例如:https://example.com/auth/add_oauth_token

    2. 将下列项目从“Available OAuth Scopes”(可用 OAuth 范围)移到“Selected OAuth Scopes”(所选 OAuth 范围)

  6. 完成后单击“Save”(保存)

  7. 转到您的“App Manager”(应用管理器)列表,导航到您的已连接应用,单击下拉箭头,然后选择“Manage”(管理)

  8. 向下滚动到“OAuth Custom Scopes”(OAuth 自定义范围),选中“cdpprofile”“cdpquery”复选框,然后单击“Save”(保存)

在保存应用后,系统会使用以下 ID 填充“API (Enable OAuth Settings)”(API (启用 Oauth 设置))部分,您将使用这些 ID 在下面的步骤 3 中配置 Tableau Server:

  • 使用者密钥

  • 使用者密码

  • 回调 URL

步骤 3:针对 Salesforce CDP Oauth 配置 Tableau Server

在 Salesforce 中创建已连接应用并拥有使用者密钥、使用者密文和回调 URL 后,您可以针对 Salesforce CDP Oauth 连接配置 Tableau Server。

  • 使用者密钥:使用者密钥(在 Tableau 中也称为客户端 ID)通过步骤 2 结尾时的过程生成。为下面的 tsm 命令中的 [your_consumer_key] 使用此值。

  • 使用者密文:使用者密文(在 Tableau 中也称为客户端密文)通过步骤 2 结尾的过程生成。为下面的 tsm 命令中的 [your_consumer_secret] 使用此值。

  • 回调 URL:回调 URL(在 Tableau 中也称为重定向 URL) Tableau Server URL https://example.com 以及附加到它的“/auth/add_oauth_token”。为下面的 tsm 命令中的 [your_callback_url] 使用此值。

  • 配置 ID:这是您将在下面的 tsm 命令中使用的 oauth.config.id 参数的值:customer_360_audience

运行以下 tsm 命令为 Salesforce CDP 配置 OAuth:

tsm configuration set -k oauth.config.clients -v "[{\"oauth.config.id\":\"customer_360_audience\", \"oauth.config.client_id\":\"[your_consumer_key]\", \"oauth.config.client_secret\":\"[your_consumer_secret]\", \"oauth.config.redirect_uri\":\"[your_callback_url]\"}]" --force-keys

tsm pending-changes apply

设置多个连接器

如果您要设置多个连接器,则必须在单个命令中包括所有这些连接器。例如:

tsm configuration set -k oauth.config.clients -v "[{\"oauth.config.id\":\"custom_360_audience\", \"oauth.config.client_id\":\"[your_consumer_key]\", \"oauth.config.client_secret\":\"[your_consumer_secret]\", \"oauth.config.redirect_uri\":\"[your_callback_url]\"}, {\"oauth.config.id\":\"dremio\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}, {\"oauth.config.id\":\"azure_sql_dw\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}, {\"oauth.config.id\":\"azure_sqldb\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}]" --force-keys

tsm pending-changes apply

为站点配置自定义 OAuth

您可以为站点配置自定义 Salesforce CDP OAuth。

注意:在 Tableau Server 中配置 Salesforce CDP OAuth 时,请执行以下操作:

  • 对于客户端 ID,请使用从上面步骤 2 结尾的过程中生成的使用者密钥。

  • 对于客户端密文,请使用从上面步骤 2 结尾的过程中生成的使用者密文。

  • 对于重定向 URL,请使用您的 Tableau Server URL https://example.com 以及附加到它的“/auth/add_oauth_token”。

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

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

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

步骤 1:准备 OAuth 客户端 ID、客户端密码和重定向 URL

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

  • OAuth 客户端 ID 和客户端密码:首先向数据提供程序(连接器)注册 OAuth 客户端,以检索为 Tableau Server 生成的客户端 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. 对于“客户端 ID”“客户端密码”“重定向 URL”,输入您在上面的步骤 1 中准备的信息。

    3. 单击“添加 OAuth 客户端”按钮以完成注册过程。

  4. (可选)对所有支持的连接器重复步骤 3。

  5. 单击“设置”页面底部或顶部的“保存”按钮以保存更改。

步骤 3:验证和更新保存的凭据

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

  1. 导航到“我的帐户设置”页面。

  2. “保存的数据源凭据”下,执行以下操作:

    1. 单击您在上述步骤 2 中配置的自定义 OAuth 客户端的连接器的现有已保存凭据旁边的“删除”

    2. 在连接器名称旁边,单击“添加”并按照提示进行操作以 1) 连接到在上述步骤 2 中配置的自定义 OAuth 客户端,以及 2) 保存最新的凭据。

步骤 4:通知用户更新他们保存的凭据

确保通知您的站点用户更新他们为连接器保存的凭据,该连接器的自定义 OAuth 客户端是您在上面的步骤 2 中配置的。站点用户可以使用更新保存的凭据描述的过程来更新他们保存的凭据。