Tableau Cloud 的 SAML 要求
在为 Tableau Cloud 配置 SAML 之前,请获取满足相关要求所需的内容。
- Tableau 配置的身份提供程序 (IdP) 要求
- SAML 兼容性注意事项和要求
- 在 Tableau 客户端应用程序中使用 SAML SSO
- 更改身份验证类型对 Tableau Bridge 的影响
- XML 数据要求
若要将 Tableau Cloud 配置为使用 SAML,您需要以下内容:
Tableau Cloud 站点的管理员访问权限。 在想要启用 SAML 的站点上,您必须具有 Tableau Cloud 站点的管理员访问权限。
将使用 SSO 来访问 Tableau Cloud 的用户的列表。 您应收集想要为其授予 Tableau Cloud 单点登录 (SSO) 访问权限的用户的用户名。
支持 SAML 2.0 的 IdP 帐户。 您需要一个外部身份提供程序帐户。一些示例包括 PingFederate、SiteMinder 和 Open AM。IdP 必须支持 SAML 2.0。您必须具有该帐户的管理员访问权限。
SHA256 用作签名算法。自 2020 年 5 月起,Tableau Cloud 会阻止使用 SHA-1 算法签名的 IdP 断言和证书。
支持导入和导出 XML 元数据的 IdP 提供程序。 尽管手动创建的元数据文件可以工作,但 Tableau 技术支持无法协助进行生成该文件或排除其问题。
强制将最大令牌期限设置为 24 天或更少(2073600 秒)的 IdP 提供程序。如果 IdP 允许令牌的最大期限大于 Tableau Cloud 上的最大期限设置(2073600 秒),则 Tableau Cloud 不会将令牌识别为有效令牌。在这种情况下,用户将在尝试登录到 Tableau Cloud 时收到错误消息(The sign-in was unsuccessful.Try again.(登录未成功,请重试。))。
已启用使用 MFA 的 SSO。自 2022 年 2 月起,Tableau Cloud 要求通过 SAML SSO 身份提供程序 (IdP) 进行多重身份验证 (MFA)。
重要信息:除了这些要求之外,我们建议您专门指定一个始终为 带 MFA 的 TableauID(链接在新窗口中打开) 配置的站点管理员帐户。如果 SAML 或 IdP 出现问题,专用的带 MFA 的 Tableau 帐户可确保您始终能够访问站点。
SP 或 IdP 已启动:Tableau Cloud 支持在身份提供程序 (IdP) 或服务提供程序 (SP) 处开始的 SAML 身份验证。
单点注销 (SLO):Tableau Cloud 支持服务提供商 (SP) 发起的 SLO 和身份提供程序 (IdP) 发起的 SLO。
注意:若要获取站点的 SLO URL,请下载并参考您的 Tableau Cloud 站点生成的元数据 XML 文件。可通过转到“设置”>“身份验证”页面来查找此文件。在“SAML”身份验证类型下方,单击“配置(必需)”下拉箭头,然后单击步骤 1 方法 1 下的“导出元数据”按钮。
Tabcmd 和 REST API:若要使用 tabcmd 或 REST API(链接在新窗口中打开),用户必须使用 TableauID 帐户登录到 Tableau Cloud。
加密断言:Tableau Cloud 支持明文或加密断言。
需要重新配置 Tableau Bridge :Tableau Bridge 支持 SAML 身份验证,但身份验证更改需要重新配置 Bridge 客户端。有关信息,请参见更改身份验证类型对 Tableau Bridge 的影响。
必需的签名算法:对于所有新的 SAML 证书,Tableau Cloud 需要 SHA256(或更高)的签名算法。
- RSA 密钥和 ECDSA 曲线大小:IdP 证书的 RSA 密钥强度必须为 2048,ECDSA 曲线大小为 256。
NameID 属性:Tableau Cloud 需要 SAML 响应中的 NameID 属性。
Tableau Cloud 用户(具有 SAML 凭据)也可以从 Tableau Desktop 或 Tableau Mobile 应用中登录到其站点。为了实现最佳兼容性,我们建议 Tableau 客户端应用程序的版本与 Tableau Cloud 的版本匹配。
从 Tableau Desktop 或 Tableau Mobile 连接到 Tableau Cloud 时,将使用服务提供程序发起的连接。
用户登录到 Tableau Cloud 时,Tableau Cloud 会向 IdP 发送一个 SAML 请求 (AuthnRequest
),其中包括 Tableau 应用程序的 RelayState 值。如果用户已通过诸如 Tableau Desktop 或 Tableau Mobile 等 Tableau 客户端登录到 Tableau Cloud,则在 IdP 对 Tableau 的 SAML 响应内返回 RelayState 值至关重要。
如果在此情形下未正确返回 RelayState 值,则会在 Web 浏览器中将用户转向其 Tableau Cloud 主页,而不是重定向回他们从中登录的应用程序。
与身份提供商和内部 IT 团队合作,确认此值将包括在 IdP 的 SAML 响应内 之间的任何网络设备(例如代理或负载平衡器)保留。
当您更改站点的身份验证类型或修改 IdP 时,为计划的数据提取刷新使用 Tableau Bridge 的发布者将需要取消链接和重新链接客户端,并使用新方法或 IdP 配置重新进行身份验证。
对于旧版计划,取消链接 Bridge 客户端会移除所有数据源,因此您必须重新设置刷新计划。对于 Online 计划,在重新链接客户端后,您必须重新配置 Bridge 客户端池。
身份验证类型的更改不会影响直接从 Tableau Cloud 站点中运行的 Bridge 实时查询或刷新(比如对于云中的基础数据就是如此)。
我们建议在对用户的站点身份验证进行更改之前将相关更改通知用户。否则,只有当用户从 Bridge 客户端中收到身份验证错误或者客户端打开时包含空白数据源区域时,他们才会意识到更改。
可以使用 Tableau Cloud 和 IdP 生成的元数据 XML 文档来配置 SAML。在身份验证过程中,IdP 和 Tableau Cloud 使用这些 XML 文档来交换身份验证信息。如果 XML 未满足这些要求,则在您配置 SAML 或在用户尝试登录时会发生错误。
HTTP POST 和 HTTP REDIRECT:Tableau Cloud 支持 SAML 通信的 HTTP POST 和 HTTP REDIRECT 请求。在由 IdP 导出的 SAML 元数据 XML 文档中,Binding
属性可以设置为:
HTTP-POST
HTTP-REDIRECT
HTTP-POST-SimpleSign
从
配置后,在用户身份验证期间,IdP 会发送包含两个自定义组成员身份声明的 SAML 断言:组 (https://tableau.com/groups
) 和组名(例如,“Group1”和“Group2”)来将用户声明到其中。Tableau 验证该断言,然后启用对组以及权限依赖于这些组的内容的访问权限。
SAML XML 响应示例
<saml2p:Response xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" ..... ..... <saml2:Assertion ..... ..... xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" <saml2:AttributeStatement xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion"> <saml2:Attribute Name="https://tableau.com/groups" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified"> <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">Group1 </saml2:AttributeValue> <saml2:AttributeValue xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">Group2 </saml2:AttributeValue> <saml2:Attribute> </saml2:AttributeStatement> </saml2:Assertion> </saml2p:Response>