在站点或 TCM 上启用 SAML 身份验证

本主题介绍如何在站点或 Tableau Cloud Manager (TCM) 上启用 SAML 和选择单点登录 (SSO) 用户。它还提供了从 SAML 切换到默认 Tableau 身份验证的步骤。在启用 SAML 之前,我们建议您查看Tableau Cloud 的 SAML 要求,包括更改身份验证类型对 Tableau Bridge 的影响

注意:为 TCM 启用 SAML 身份验证需要从 Tableau Cloud 进行单独设置和应用程序集成。

本主题假定您熟悉身份验证以及 SAML 身份验证的工作原理中的信息。

特定于 IdP 的配置信息

本主题后面各节中的步骤提供了您可与 IdP 文档配合使用来为 Tableau Cloud 站点 或 TCM 配置 SAML 的基本步骤。可以为以下 IdP 获取特定于 IdP 的配置步骤:

启用 SAML

对于 Tableau Cloud

  1. 以站点管理员身份登录到 Tableau Cloud 站点,并选择“设置”>“身份验证”

  2. “身份验证”选项卡上,单击“新配置”按钮,从“身份验证”下拉菜单中选择“SAML”,然后输入配置的名称。

    Tableau Cloud 站点身份验证设置 - 新配置页面的屏幕快照

    注意:2025 年 1 月(Tableau 2024.3)之前创建的配置无法重命名。

对于 TCM

或者,在 TCM 中,执行以下操作:

  1. 以云管理员身份登录到 TCM,并选择“设置”>“身份验证”

  2. 选择“启用其他身份验证方法”复选框,然后从“从身份验证”下拉菜单中选择“SAML”

  3. 单击“配置(必需)”下拉箭头。

SAML 配置步骤

此部分将引导您完成在 Tableau Cloud 蓝或 TCM 设置页面的“身份验证”选项卡上出现的配置步骤。

注意:若要完成此过程,您还将需要 IdP 提供的文档。请查找那些介绍如何为 SAML 连接配置或定义服务提供程序或者添加应用程序的主题。

步骤 1:从 IdP 中导出元数据

转到您的 IdP,登录您的 IdP 帐户,然后使用 IdP 文档提供的说明下载您的 IdP 的元数据。IdP 的元数据使 Tableau Cloud 或 TCM 能够连接到您的 IdP。

对于步骤 1,IdP 的文档将也可在如何向服务提供程序提供元数据方面为您提供指导。它将指示您下载 SAML元数据文件,或者将显示 XML 代码。如果它显示 XML 代码,请将代码复制并粘贴到一个新文本文件中,并使用 .xml 扩展名保存文件。

步骤 2:将元数据上传到 Tableau

对于 Tableau Cloud,在 Tableau Cloud 中的“新配置”页面上,导入您从 IdP 下载或通过它提供的 XML 手动配置的元数据 (.xml) 文件。

对于 TCM,在 TCM 中的“身份验证”页面上,导入您从 IdP 下载或通过它提供的 XML 手动配置的元数据 (.xml) 文件。

注意: 

  • 上功 IdP 元数据后,“IdP 实体 ID”“IdP SSO 服务 URL”字段将自动填充。
  • 如果编辑配置,您将需要上载元数据文件,以便 Tableau 知道使用正确的 IdP 实体 ID 和 SSO 服务 URL。
  • 如果您需要上载新的元数据文件,您可以使用 “清除 IdP 元数据”按钮。
步骤 3:映射属性

属性包含有关用户的身份验证、授权和其他信息。

注意:Tableau Cloud 或 TCM 需要 SAML 响应中的 NameID 属性。您可以提供其他属性来映射 Tableau 中的用户名,但响应消息必须包含 NameID 属性。

  • 用户名:(必填)输入存储用户的用户名(电子邮件地址)的属性的名称。

  • 电子邮件: (可选)输入包含 IdP 在身份验证过程中使用的电子邮件地址的属性名称,以便用户能够在不同于用户名的电子邮件地址上接收通知。电子邮件地址属性仅用于通知目的,不用于登录。

  • 显示名称:(可选但建议使用)某些 IdP 为名和姓使用单独的属性,而另一些则将全名存储在一个属性中。

    选择对您的 IdP 存储名称的方式对应的按钮。举例来说,如果 IdP 将名和姓合并在一个属性中,请选择“显示名称”,然后输入属性名称。

    为 Tableau Cloud 配置站点 SAML 的步骤 3 的屏幕快照 - 映射属性

步骤 4:为嵌入视图选择默认值

注意:仅适用于 Tableau Cloud。

选择用户用于登录到嵌入视图的方法。此选项将打开一个显示 IdP 登录表单的单独弹出式窗口,或者使用嵌入式框架 (iframe)。

重要信息:由于 iframe 可能容易受到点击劫持攻击,因此并非所有 IdP 都支持通过 iframe 登录。利用点击劫持,攻击者会尝试引诱用户点击或输入内容。通过将攻击页面显示在某个不相关页面上的透明层中,攻击者可以达到此目的。对于 Tableau Cloud,攻击者可能会试图捕获用户凭据,或让授权用户更改设置。有关详细信息,请参见开放式 Web 应用程序安全项目网站上的点击劫持(链接在新窗口中打开)

如果您的 IdP 不支持通过 iframe 登录,请选择“在单独的弹出窗口中进行身份验证”

步骤 4:获取 Tableau 元数据 (TCM)

要在 TCM 与您的 IdP 之间创建 SAML 连接,需要在这两项服务之间交换必需的元数据。若要从 TCM 中获取元数据,请选择以下方法之一:请参见 IdP 的 SAML 配置文档来确认正确的选项。

  • 选择“导出元数据”按钮以下载一个包含 Tableau Cloud SAML 实体 ID、声明使用者服务 (ACS) URL 和 X.509 证书的 XML 文件。

  • 如果您的 IdP 期望以另一种方式获得所需的信息,请选择“下载证书”。举例来说,它希望您在将临的位置中输入 Tableau Cloud 实体 ID、ACS URL 和 X.509 证书。

步骤 5:获取 Tableau 元数据 (Tableau Cloud)

要在 Tableau Cloud 与您的 IdP 之间创建 SAML 连接,需要在这两项服务之间交换必需的元数据。若要从 Tableau Cloud 中获取元数据,请选择以下方法之一:请参见 IdP 的 SAML 配置文档来确认正确的选项。

  • 选择“导出元数据”按钮以下载一个包含 Tableau Cloud SAML 实体 ID、声明使用者服务 (ACS) URL 和 X.509 证书的 XML 文件。

  • 如果您的 IdP 期望以另一种方式获得所需的信息,请选择“下载证书”。举例来说,它希望您在将临的位置中输入 Tableau Cloud 实体 ID、ACS URL 和 X.509 证书。

    从 Tableau Cloud 导出或复制元数据的指南。

步骤 5:配置 IdP (TCM)

对于步骤 5,请使用 IdP 文档提供的说明提交 TCM 元数据。

步骤 6:配置 IdP (Tableau Cloud)

对于步骤 6,请使用 IdP 文档提供的说明提交 Tableau Cloud 元数据。

步骤 6:测试配置并排查 SAML 问题 (TCM)

我们强烈建议您测试 SAML 配置以避免出现任何锁定情况。测试配置有助于确保在将用户的身份验证类型更改为 SAML 之前正确配置了 SAML。为了成功测试配置,请确保至少有一个您可以登录的用户,该用户已在 IdP 中预置并添加到 Tableau Cloud 或 TCM 中,并配置了 SAML 身份验证类型。

如果您无法成功登录 TCM,请首先执行“身份验证”页面上建议的故障排除步骤。如果这些步骤无法解决问题,请参见 SAML 疑难解答

步骤 7:测试配置并排查 SAML 问题 (Tableau Cloud)

我们强烈建议您测试 SAML 配置以避免出现任何锁定情况。测试配置有助于确保在将用户的身份验证类型更改为 SAML 之前正确配置了 SAML。为了成功测试配置,请确保至少有一个您可以登录的用户,该用户已在 IdP 中预置并添加到 Tableau Cloud 或 TCM 中,并配置了 SAML 身份验证类型。

如果您无法成功登录 Tableau Cloud,请首先执行“新配置”页面上建议的故障排除步骤。如果这些步骤无法解决问题,请参见 SAML 疑难解答

管理用户

选择现有 Tableau Cloud 或 TCM 用户,或者添加您想批准其进行单点登录的新用户。

在添加或导入用户时,还要指定用户的身份验证类型。在“用户”页面上,可以在添加用户后随时更改用户的身份验证类型。

有关详细信息,请参见以下各项之一:

嵌入视图的默认身份验证类型

注意:仅适用于 Tableau Cloud。

  • 允许用户选择其身份验证类型

    当选择此选项时,仅支持弹出窗口。在此弹出窗口中,嵌入视图的位置将显示两个登录选项:一个登录按钮(使用单点登录 (SSO) 身份验证)和一个使用 Tableau 凭据作为替代方案的链接。

    提示:对于此选项,用户需要知道要选择哪个登录选项。作为在将用户添加到单点登录站点后向用户发送的通知的一部分,请告知用户要为各种登录方案选择哪种身份验证类型。例如,嵌入视图、Tableau Desktop、Tableau Bridge、Tableau Mobile,诸如此类。

  • 带有 MFA 的 Tableau

    此选项要求用户使用 采用多重身份验证的 Tableau 凭据登录,即使在站点上启用了 SAML 也是如此。使用带有 MFA 的 Tableau 登录要求用户设置验证方法,以在用户每次登录 Tableau Cloud 时确认身份。有关详细信息,请参见多重身份验证和 Tableau Cloud

  • 身份验证配置列表

    选择特定配置选项时,用户登录嵌入式视图的方式由您在上述步骤 6 中为指定配置配置的设置决定。

使用 Tableau 身份验证

如果站点或租户配置为使用 SAML,您可以更改设置以要求部分或全部用户使用 Tableau 凭据登录。

  • 如果不再需要身份提供程序来处理身份验证,或者要求所有用户都使用其 Tableau 凭据登录,您可以在站点或租户级别更改身份验证类型。请参见下面的更改站点的身份验证类型部分。

  • 如果要为部分用户保持启用 SAML,但要求其他用户使用 Tableau,您可以在用户级别更改身份验证类型。有关详细信息,请参见设置用户身份验证类型

更改站点的身份验证类型

对于 Tableau Cloud

从 2025 年 1 月(Tableau 2024.3)开始,您可以在站点上启用多种身份验证类型和方法。若要更改您希望在站点上提供的身份验证,请启用或禁用身份验证配置。

  1. 以站点管理员身份登录到 Tableau Cloud 站点。

  2. 选择“设置”>“身份验证”

  3. 通过单击“操作”菜单并选择“禁用”“启用”,禁用或启用站点的身份验证配置。

将 SAML 配置设为非活动之后,会保留元数据和 IdP 信息因此,如果想再次启用它,您无需再次与 IdP 建立 SAML 连接。

对于 TCM

  1. 以云管理员身份登录到 TCM。

  2. 选择“设置”>“身份验证”

  3. 取消选中“启用附加身份验证方法”复选框。

更新 SAML 证书

用于 Tableau 站点元数据的证书由 Tableau 提供,不可配置。若要更新 SAML 证书,您必须将新证书上载到 IdP,并与 Tableau Cloud 重新交换元数据。

对于 Tableau Cloud

  1. 以站点管理员身份登录到站点,并选择“设置”>“身份验证”

  2. 在“身份验证类型”下,转到要更新的 SAML 配置,然后单击“操作”菜单并选择“编辑”

  3. 打开一个新选项卡或窗口,并登录到您的 IdP 帐户。

  4. 使用 IdP 文档提供的说明上载新的 SAML 证书。

  5. 下载新的 XML 元数据文件以提供给 Tableau Cloud

  6. 返回到 Tableau Cloud 中的“编辑配置”页面,并在步骤 2 中上载您从 IdP 下载的元数据文件。

  7. 向下滚动页面并单击“保存并继续”按钮。

对于 TCM

  1. 以云管理员身份登录到 TCM,并选择“设置”>“身份验证”

  2. 从“身份验证”下拉菜单中选择“SAML”>“配置(必需)”

  3. 打开一个新选项卡或窗口,并登录到您的 IdP 帐户。

  4. 使用 IdP 文档提供的说明上载新的 SAML 证书。

  5. 下载新的 XML 元数据文件以提供给 TCM。

  6. 返回到 TCM 中的“身份验证”页面,并在步骤 2 中上载您从 IdP 下载的元数据文件。

  7. 向下滚动页面并单击“保存并继续”按钮。

使用用户属性自定义和控制数据访问

用户属性是组织定义的用户元数据。在典型的基于属性的访问控制 (ABAC) 授权模型中,用户属性可用于确定访问权限。用户属性可以是用户配置文件的任何方面,包括工作角色、部门成员身份、管理级别等。它们还可能与运行时用户上下文相关联,例如用户的登录位置或他们的语言首选项。

通过在工作流中包含用户属性,您可以通过数据访问和个性化来控制和自定义用户体验。

  • 数据访问:用户属性可用于实施数据安全策略。这可以确保用户只能看到他们有权查看的信息。
  • 个性化:通过传递位置和角色等用户属性,可以自定义内容以仅显示与访问内容的用户相关的信息,从而使他们能够更轻松地找到所需的信息。

传递用户属性的步骤摘要

在工作流中启用用户属性的过程总结为以下步骤:

  1. 启用用户属性设置
  2. 在断言中包括用户属性
  3. 确保内容作者包括用户属性函数和相关筛选器
  4. 查看内容

步骤 1:启用用户属性设置

出于安全目的,仅当站点管理员启用用户属性设置时,才会在身份验证工作流中验证用户属性。

  1. 登录到 Tableau Cloud 并单击“设置”>“身份验证”

  2. 在“控制身份验证工作流程中的用户访问”标题下,选中“在身份验证工作流中启用用户属性捕获”复选框。

有关站点设置的详细信息,请参见在身份验证工作流程中控制用户访问

步骤 2:在断言中包括用户属性

请确保断言包含用户属性。

注意:SAML 响应中的属性受 4096 个字符限制的约束,但 scpscope 属性除外。如果响应中的属性(包括用户属性)超过此限制,Tableau 将移除这些属性并改为传递 ExtraAttributesRemoved 属性。然后,内容作者可以使用 ExtraAttributesRemoved 属性创建一个计算,以确定在检测到该属性后如何向用户显示内容。

示例

假设您有一名员工 Fred Suzuki,他是南部区域的经理。您需要确保,当 Fred 审阅报告时,他只能看到南部区域的数据。在这种情况下,您可能会在 SAML 响应中包括 Region 用户属性,如下例所示。

<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
	<saml;Issuer">https://myidp.okta.com/saml</saml:Issuer">
   <saml;Subject">
	  <saml:NameId Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"fsuzuki@example.com</saml:NameID">
   <saml:AttributeStatement xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">
  		<saml:Attribute Name="Region" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
  			<saml:AttributeValue">South</saml:AttributeValue">
    	</saml:Attribute">
   </saml:AttributeStatement">
</saml:Assertion">

步骤 3:确保内容作者包括属性函数

确保内容作者包括用户属性函数和相关筛选器,以控制哪些数据可以显示在其内容中。为了确保将用户属性断言传递给 Tableau,内容必须包含以下用户属性函数之一:

  • USERATTRIBUTE('attribute_name')
  • USERATTRIBUTEINCLUDES('attribute_name', 'expected_value')

内容作者使用的函数取决于用户属性是预期返回单个值还是多个值。有关这些函数及其示例的详细信息,请参见 Tableau 帮助中的用户函数(链接在新窗口中打开)

注意:

  • 在 Tableau Desktop 或 Tableau Cloud 中进行制作时,无法预览包含这些函数的内容。函数将返回 NULL 或 FALSE 。为确保用户函数按预期工作,我们建议作者在提供内容后查看函数。
  • 为了确保内容按预期呈现,内容作者可以考虑包括一个使用 ExtraAttributesRemoved 执行以下操作的计算:1) 检查此属性,以及 2) 如果检查到该属性,则确定如何处理该内容,例如显示一条消息。Tableau 只会在 SAML XML 中的属性超过 4096 个字符时添加 ExtraAttributesRemoved 属性并移除所有其他属性( scpscope 除外)。这是为了确保最佳性能并遵守存储限制。

示例

继续上面的步骤 2:在断言中包括用户属性中介绍的示例,若要将“Region”用户属性断言传递给工作簿,作者可以包括 USERATTRIBUTEINCLUDES。例如,USERATTRIBUTEINCLUDES('Region', [Region]),其中“Region”是用户属性,[Region] 是数据中的一列。使用新计算,作者可以创建一个包含经理和销售额数据的表。添加计算后,工作簿将按预期返回“False”值。

若要在嵌入式工作簿中仅显示与南部区域关联的数据,作者可以创建一个筛选器并对其进行自定义,以便在南部区域为“True”时显示值。应用筛选器后,工作簿将按预期变为空白,因为函数返回“False”值,并且筛选器自定义为仅显示“True”值。

步骤 4:查看内容

查看和验证内容。

示例

为了结束上述步骤 3:确保内容作者包括属性函数中的示例,您可以看到视图中的销售额数据是针对 Fred Suzuki 自定义的,因为他的用户上下文是南部区域。

工作簿中所代表区域的经理应会看到与其区域关联的值。例如,来自西部区域的 Sawdie Pawthorne 会看到特定于她所在区域的数据。

工作簿中未显示其区域的经理将看到空白工作簿。

已知问题和限制

使用用户属性函数时应考虑一些已知问题和限制。

使用 Tableau REST API 的空白图像

Tableau REST API 请求“查询预览图像(链接在新窗口中打开)”、“查询工作簿图像”(链接在新窗口中打开)“获取自定义视图图像”(链接在新窗口中打开)会生成空白图像。

限制

  • 不支持已发布数据源 (.pds) 中的用户属性函数。
  • 不支持 Tableau Bridge 工作流中的用户属性函数。

另请参见

从连接的客户端中访问站点

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