OAuth 连接

使用 Tableau CloudTableau Server 存储敏感数据库凭据的替代方法或是使用 OAuth 2.0 标准创建连接。以下连接器支持 OAuth 身份验证: 

  • Anaplan
  • Azure Data Lake Storage Gen2、Azure SQL、Azure Synapse
  • Box
  • Esri ArcGIS Server
  • Databricks
  • Dremio
  • Dropbox
  • Google Ads、Google Analytics、Google BigQuery
  • LinkedIn Sales Navigator
  • Marketo
  • OneDrive
  • Oracle Eloqua
  • QuickBooks Online
  • Salesforce,Salesforce CDP
  • SAP HANA(仅限 Cloud)
  • ServiceNow ITSM
  • Snowflake

从 Tableau 中,当用户通过使用 OAuth 的连接器登录到数据时,用户将被重定向到身份验证提供程序的登录页面。用户提供凭据并授权 Tableau 访问其数据后,身份验证提供程序会向 Tableau 发送访问令牌,该令牌唯一标识 Tableau 和用户。此访问令牌用于代表用户访问数据。有关详细信息,请参见下面的 OAuth 进程概述

使用基于 Oauth 的连接可提供以下好处:

  • 安全:您的数据库凭据从不会被 Tableau Cloud 知道或存储在其中,并且访问令牌只能由 Tableau 代表用户使用。

  • 方便:不必在多个位置嵌入您的数据源 ID 和密码,您可以对访问特定数据提供程序的所有已发布工作簿和数据源使用为该数据提供程序提供的令牌。

    注意:对于 Google BigQuery 数据的实时连接,每个工作簿 Viewer(查看者)都可以拥有标识用户的唯一访问令牌,而不是共享单个用户名和密码凭据。

OAuth 进程概述

下列步骤介绍 Tableau 环境中调用 OAuth 过程的一个工作流。

  1. 用户执行的操作需要访问基于云的数据源。

    例如,您打开发布到 Tableau Cloud 的工作簿。

  2. Tableau 将用户定向到云数据提供程序的登录页面。发送给数据提供程序的信息将 Tableau 标识为请求站点。

  3. 当用户登录到数据时,提供程序会提示用户确认其授权 Tableau Cloud 访问数据。

  4. 用户确认后,数据提供程序会向 Tableau Cloud 发送访问令牌。

  5. Tableau Cloud 向用户显示工作簿和数据。

注意:目前,与 Tableau 的 OAuth 连接不支持一次性刷新令牌(有时称为滚动刷新令牌或刷新令牌轮换)。我们计划在未来的版本中支持这些令牌。

下列用户工作流可以使用 OAuth 进程:

  • 从 Tableau Desktop 或从 Tableau Cloud 创建工作簿并连接到数据源。

  • 从 Tableau Desktop 发布数据源。

  • 从诸如 Tableau Mobile 或 Tableau Desktop 等批准的客户端登录 Tableau Cloud 站点。

    注意:Tableau Bridge 支持为连接器身份难使用 OAuth:Snowflake、Google BigQuery、Google Drive、Salesforce 和 OneDrive。

默认已保存凭据连接器

已保存凭据是指 Tableau Cloud 存储 OAuth 连接的用户令牌的功能。这允许用户将其 OAuth 凭据保存到其在 Tableau Cloud 上的用户配置文件。保存凭据后,当他们随后访问连接器进行发布、编辑或刷新时,将不会收到提示。

注意:在 Web 上编辑 Tableau Prep 流程时,系统可能仍会提示您重新进行身份验证。

所有支持的连接器列在 Tableau Cloud 上用户的“我的帐户设置”页面上的“数据源的已保存凭据”下。用户针对每种连接器管理其已保存凭据。

数据连接访问令牌

可以根据包含数据连接的访问令牌嵌入凭据,以允许在初始身份验证过程结束之后直接访问。除非 Tableau Cloud 用户删除访问令牌或数据提供程序撤消它,否则它会一直有效。

可能超出了数据源提供程序允许的访问令牌数。在这种情况下,当用户创建新令牌时,数据提供程序将使用自上次访问以来已经过去的时间长度来决定使哪个令牌失效以便为新令牌腾出空间。

批准的客户端身份验证的访问令牌

默认情况下,在用户第一次登录时提供其凭据后,Tableau Cloud站点允许用户直接从批准的 Tableau 客户端访问其站点。此类型的身份验证还使用 OAuth 访问令牌安全地存储用户的凭据。

有关详细信息,请参见从连接的客户端中访问站点

默认托管密钥链连接器

托管密钥链是指提供商为 Tableau Cloud 生成 OAuth 令牌并由同一站点中的所有用户共享的功能。当用户首次发布数据源时,Tableau Server 会提示用户输入数据源凭据。Tableau Cloud 将凭据提交到数据源提供程序,该提供程序将返回 OAuth 令牌供 Tableau Cloud 代表用户使用。在后续发布操作中,使用 Tableau Cloud 为同一类和用户名存储的 OAuth 令牌,以便不会提示用户输入 OAuth 凭据。如果数据源密码发生更改,则重复上述过程,并将旧令牌替换为 Tableau Cloud 上的新令牌。

默认托管密钥链连接器不需要在 Tableau Cloud 上进行额外的 OAuth 配置:

  • Google Analytics、Google BigQuery 和 Google Sheets(在 2022 年 3 月已弃用

  • Salesforce

配置自定义 OAuth

从 2021.2 开始,作为站点管理员,您可以为每个 OAuth 支持的数据提供程序(连接器)配置自定义 OAuth 客户端,以覆盖您站点的预配置 OAuth 客户端设置。您可以考虑配置自定义 OAuth 客户端以支持安全连接到需要唯一 OAuth 客户端的数据。

配置了自定义 OAuth 客户端后,默认配置将被忽略,并且站点上创建的所有新 OAuth 凭据默认使用自定义 OAuth 客户端。

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

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

在配置自定义 OAuth 客户端之前,您必须收集在此之后列出的信息。获得此信息后,您可以为每个 OAuth 支持的连接器配置自定义 OAuth 客户端。

  • OAuth 客户端 ID 和客户端密文:首先向数据提供程序(连接器)注册 OAuth 客户端以检索客户端 ID 和客户端密文。支持的连接器包括:

    • Azure Data Lake Storage Gen2、Azure SQL Database、Azure Synapse
    • Databricks
    • Dremio
    • Dropbox
    • Google Analytics、Google BigQuery、Google Sheets(2022 年 3 月已弃用)
    • Intuit Quick books Online
    • Salesforce,Salesforce CDP
    • Snowflake(有关详细信息,请参见 Tableau 连接器 SDK 文档中的OAuth 配置和使用(链接在新窗口中打开)。)
  • 重定向 URL:请注意 Tableau Cloud 站点所在的 pod,以确保您在下面步骤 2 的注册过程中输入正确的重定向 URL。重定向 URL 使用以下格式:

    Https://<您的 pod> .online.tableau.com/auth/add_oauth_token

    例如, https://us-west-2b.online.tableau.com/auth/add_oauth_token

    注意:有关 pod 的详细信息,请参见 Salesforce 信任(链接在新窗口中打开)页面。

步骤 2:注册 OAuth 客户端 ID 和客户端密文

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

  1. 使用站点管理员凭据登录到 Tableau Cloud,并导航到“设置”页面。

  2. 在“OAuth 客户端注册”下,单击“添加 OAuth 客户端”按钮。

  3. 输入所需信息,包括上面步骤 1 中的信息:

    1. 对于“连接类型”,选择与要配置其自定义 OAuth 客户端的连接器对应的数据库类值。

    2. 对于“客户端 ID”“客户端密文”“重定向 URL”,输入您在上面的步骤 1 中准备的信息。

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

  4. (可选)为其他连接器重复步骤 3。

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

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

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

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

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

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

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

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

确保通知您的站点用户更新他们为数据提供程序保存的凭据,您在上面的步骤 2 中为其配置了自定义 OAuth 客户端。站点用户可以使用更新保存的凭据中描述的过程来更新他们保存的凭据。

感谢您的反馈!您的反馈已成功提交。谢谢!