OAuth 连接

使用 Tableau Online 存储敏感数据库凭据的替代方法是使用 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、Google Sheets
  • LinkedIn Sales Navigtor
  • Marketo
  • OneDrive
  • Oracle Eloqua
  • QuickBooks Online
  • Salesforce
  • ServiceNow ITSM
  • Snowflake

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

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

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

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

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

OAuth 进程概述

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

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

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

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

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

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

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

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

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

  • 从 Tableau Desktop 发布数据源。

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

    注意:Tableau Bridge 不支持 OAuth 连接。

数据连接访问令牌

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

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

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

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

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

配置自定义 OAuth

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

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

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

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

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

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

    • Azure Data Lake Storage Gen2、Azure SQL Database、Azure Synapse
    • Databricks
    • Dremio
    • Dropbox
    • Google Analytics、Google BigQuery、Google Sheets
    • Intuit Quickbooks Online
    • Salesforce
    • Snowflake
  • 重定向 URL:请注意 Tableau Online 站点所在的 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 的详细信息,请参见 Tableau 信任(链接在新窗口中打开)页面。

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

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

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

  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 客户端。站点用户可以使用更新保存的凭据中描述的过程来更新他们保存的凭据。

感谢您的反馈!