使用 AD FS 配置 SAML
- 版本 :2022.1 及更高版本
您可以将 Active Directory 联合服务 (AD FS) 配置为 SAML 身份提供程序,并将 Tableau Online 添加到支持的单点登录应用程序。如果将 AD FS 与 SAML 和 Tableau Online 集成,用户可以使用其标准网络凭据登录到 Tableau Online。
您可以将 Active Directory 联合服务 (AD FS) 配置为 SAML 身份提供程序,并将 Tableau Online 添加到支持的单点登录应用程序。如果将 AD FS 与 SAML 和 Tableau Online 集成,用户可以使用其标准网络凭据登录到 Tableau Online。
注意:这些步骤反映第三方应用程序,并且会在我方不知道的情况下发生更改。如果此处描述的步骤与您在您的 IdP 帐户中看到的屏幕不符,您可以使用一般 SAML 配置步骤,以及 IdP 的文档。
先决条件
您的环境必须具有以下各项,然后才能使用 AD FS 配置 Tableau Online 和 SAML:
运行 Microsoft Windows Server 2008 R2(或更高版本)并安装了 AD FS 2.0(或更高版本)及 IIS 的服务器。
我们建议您保护 AD FS 服务器的安全(例如,使用反向代理)。如果可从防火墙外部访问您的 AD FS 服务器,则 Tableau Online 可将用户重定向到 AD FS 托管的登录页面。
使用 TableauID 身份验证的站点管理员帐户。如果 SAML 单点登录失败,您仍然能够以站点管理员身份登录到 Tableau Online。
步骤 1:从 Tableau Online 中导出元数据
以站点管理员身份登录到 Tableau Online。
如果 Tableau Online 有多个站点,请在站点下拉列表中选择要为其启用 SAML 的站点。
选择“设置”>“身份验证”。
在“身份验证”选项卡上,选择“启用其他身份验证方法”,选择“SAML”,然后单击“编辑连接”。
在步骤 1“从 Tableau Online 导出元数据”下,单击“导出元数据”以下载一个包含 Tableau Online SAML 实体 ID、断言使用者服务 (ACS) URL 和 X.509 证书的 XML 文件。
步骤 2:配置 AD FS 以接受来自 Tableau Online 的登录请求
将 AD FS 配置为接受 Tableau Online 登录请求是一个多步骤过程,此过程从将 Tableau Online XML 元数据文件导入 AD FS 开始。
执行以下操作之一以打开添加依赖方信任向导:
单击“开始”菜单 >“管理工具”>“AD FS 2.0”。
在“AD FS 2.0”中的“信任关系”下,右键单击“信赖方信任”文件夹,然后单击“添加信赖方信任”。
打开“服务器管理器”,然后在“工具”菜单上单击“AD FS 管理”。
在“AD FS 管理”中的“操作”菜单上,单击“添加信赖方信任”。
在“添加信赖方信任向导”中,单击“开始”。
在“选择数据源”页面上,选择“从文件导入有关信赖方的数据”,然后单击“浏览”找到 Tableau Online XML 元数据文件。默认情况下,此文件名为 samlspmetadata.xml。
单击“下一步”,然后在“指定显示名称”页面上的“显示名称”和“备注”框中,为信赖方信任键入名称和说明。
单击“下一步”跳过“立即配置多重身份验证”页面。
单击“下一步”跳过“选择颁发授权规则”页面。
单击“下一步”跳过“准备好添加信任”页面。
在“完成”页面上,选中“向导关闭时打开此信赖方信任的‘编辑声明规则’对话框”复选框,然后单击“关闭”。
Windows Server 2008 R2:
Windows Server 2012 R2:
接下来,您将在“编辑声明规则”对话框中进行操作,以添加一个规则,来确保 AD FS 发送的断言与 Tableau Online 需要的断言匹配。Tableau Online 至少需要一个电子邮件地址。不过,如果除电子邮件之外还包括名字和姓氏,则可确保 Tableau Online 中显示的用户名与 AD 帐户中的用户名相同。
在“编辑声明规则”对话框中,单击“添加规则”。
在“选择规则类型”页面上,针对“声明规则模板”,选择“以声明方式发送 LDAP 特性”,然后单击“下一步”。
在“配置声明规则”页面上,针对“声明规则名称”,输入对您有意义的规则名称。
对于“特性存储”,选择“Active Directory”,按如下所示方式完成映射,然后单击“完成”。
映射区分大小写,并且需要准确的拼写,因此请仔细检查您输入的内容。此处的表显示了常见的属性和声明映射。使用特定的 Active Directory 配置验证属性。
注意:Tableau Online 需要 SAML 响应中的 NameID 属性。您可以提供其他属性来映射 Tableau Online 中的用户名,但响应消息必须包含 NameID 属性。
LDAP 特性 | 传出声明类型 |
---|---|
用户主体名称 | |
名 | firstName |
姓氏 | lastName |
如果运行的是 AD FS 2016 或更高版本,则必须添加一个规则以经历所有声明值。如果运行的是早期版本的 AD FS,请跳到下一个过程以导出 AD FS 元数据。
单击“Add Rule”(添加规则)。
在“Claim rule template”(声明规则模板)下,选择“Pass Through or Filter an Incoming Claim”(经历或筛选传入声明)。
在“Claim rule name”(声明规则名称)下,输入“Windows”。
在“Edit Rule - Windows”(编辑规则 - Windows)弹出窗口中:
在“Incoming claim type”(传入声明类型)下,选择“Windows account name”(Windows 帐户名)。
选择“Pass through all claim values”(传递所有声明值)。
单击“OK”(确定)。
现在,您将导出稍后将导入到 Tableau Online 的 AD FS 元数据。您还将确保已针对 Tableau Online 对元数据进行了正确配置和编码,并验证 SAML 配置的其他 AD FS 要求。
将 AD FS 联合元数据导出到 XML 文件,然后从 https:///FederationMetadata/2007-06/FederationMetadata.xml 下载文件。
在文本编辑器(如 Sublime Text 或 Notepad++)中打开元数据文件,并验证它是否正确编码为无 BOM 的 UTF-8。
如果文件显示某种其他编码类型,请使用正确的编码从文本编辑器中保存该文件。
验证 AD FS 是否使用基于表单的身份验证。登录是在浏览器窗口中执行的,因此您需要 AD FS 默认使用这种类型的身份验证。
编辑 c:\inetpub\adfs\ls\web.config,搜索相关标记,并移动行以使其显示为列表中的第一行。保存文件,以便 IIS 能够自动重新加载它。
注意:如果未看到 c:\inetpub\adfs\ls\web.config 文件,则 AD FS 服务器上未安装和配置 IIS。
配置其他 AD FS 信赖方标识符。这使得您的系统能够解决 SAML 注销的任何 AD FS 问题。
执行以下操作之一:
Windows Server 2008 R2:
Windows Server 2012 R2:
注意:对于依赖于同一实例的单一依赖方,AD FS 可与 Tableau Server 结合使用。AD FS 不能用于依赖于同一实例的多个依赖方,例如,多站点 SAML 站点或者服务器范围和站点 SAML 配置。
在“AD FS 管理”的“信赖方信任”列表中,右键单击您之前为 Tableau Online 创建的信赖方,并单击“属性”。
在“标识符”选项卡上的“信赖方标识符”框中,输入 https://,然后单击“添加”。
在 AD FS 2.0 中,右键单击您之前为 Tableau Online 创建的信赖方,并单击“属性”。
在“标识符”选项卡上的“信赖方标识符”框中,输入 https://,然后单击“添加”。
步骤 3:将 AD FS 元数据导入 Tableau Online
在 Tableau Online 中,返回到“设置”>“身份验证”页面。
在“4 将元数据文件导入 Tableau Online”下的 IdP 元数据文件框中,指定您从 AD FS 导出的文件的名称 (FederationMetadata.xml)。
跳过 5。“匹配特性”。
您已在 AD FS 中创建了一条声明规则,使特性名称与 Tableau Online 的预期特性名称匹配。
在“6.管理用户”下,执行以下操作之一:
如果尚未添加 Tableau Online 用户,请单击“添加用户”。
可以随后使用表单手动添加用户,或导入包含用户信息的 CSV 文件。
如果已向站点中添加了用户,请单击“选择用户”。
选中要允许使用 SAML 登录的用户旁边的复选框,然后在“操作”菜单上选择“身份验证”。将身份验证方法更改为 SAML。
(可选)使用以下步骤测试 SAML 登录:
在 Web 浏览器中打开一个私有窗口或会话。
例如,在 Google Chrome 中的窗口右上角单击“自定义及控制 Google Chrome”>“打开新的隐身窗口”,然后导航到 https://online.tableau.com。
输入用户的电子邮件地址。Tableau Online 将移除密码字段(如果用户的帐户已正确设置为使用 SAML 身份验证)。
单击“登录”,并在 AD FS 登录页面上输入您的 AD 凭据。
经过身份验证后,AD FS 会将您重定向到 Tableau Online。
您的 Tableau Online 站点现在已准备好让用户使用 AD FS 和 SAML 进行登录。他们仍然会导航到 https://online.tableau.com,但在输入其电子邮件地址之后,页面将重定向到 AD FS 登录页面(如上面的可选测试步骤中所示),并提示用户输入其 AD 凭据。
注意:如果在测试 SAML 登录时遇到错误,请在“步骤 7.单点登录 (SSO) 疑难解答”(属于 Tableau Online SAML 配置步骤)中单击“下载日志文件”,并使用该处的信息排查错误。
其他要求和提示
在 AD FS 和 Tableau Online 之间设置 SAML 集成之后,您必须更新 Tableau Online 以反映在 Active Directory 中所做的特定用户更改。例如,添加或移除用户。
您可以自动或手动添加用户:
注意:如果要移除用户但保留用户拥有的内容资产,请在移除用户之前更改内容的所有者。删除用户也会删除他们拥有的内容。
自动添加用户:(使用 PowerShell、Python 或批处理文件)创建一个脚本,将 AD 更改推送到 Tableau Online。脚本可以使用 tabcmd 或 REST API 与 Tableau Online 交互 。
手动添加用户:登录到 Tableau Online Web UI,转到““用户”页面,单击“添加用户”,并输入用户的电子邮件地址或上载包含用户信息的 CSV 文件。
在 Tableau Online 中,用户的电子邮件地址是其唯一标识符。如用于配置 AD FS 以接受来自 Tableau Online 的登录请求的步骤中所述,用户的 Tableau Online 电子邮件地址必须与 AD 中存储的电子邮件地址匹配。
在步骤 2:配置 AD FS 以接受来自 Tableau Online 的登录请求中,您在 AD FS 中添加了一个声明规则,以在 AD FS 和 Tableau Online 之间匹配名字、姓氏和电子邮件地址属性。或者,您可以使用使用“步骤 5.匹配属性”(在 Tableau Online 中)来执行相同的操作。