将加密通道配置为 LDAP 外部身份存储

 

配置为连接到外部 LDAP 身份存储的 Tableau Server 必须查询 LDAP 目录并建立会话。建立会话的过程称为绑定。有多种绑定方式。Tableau Server 支持两种绑定到 LDAP 目录的方法:

  • 简单绑定:通过使用用户名和密码进行身份验证来建立会话。默认情况下,Tableau Server 在连接到 Windows Active Directory 时将尝试 StartTLS 来加密会话。如果 Tableau Server 具有有效的 TLS 证书,则会话将被加密。否则,使用简单绑定的 LDAP 未加密。如果使用简单绑定来配置 LDAP,我们强烈建议您启用 LDAP over SSL/TLS。

  • GSSAPI 绑定。GSSAPI 使用 Kerberos 进行身份验证。当使用密钥表文件配置时,在 GSSAPI 绑定期间身份验证是安全的。但是,不会对进入 LDAP 服务器的后续流量进行加密。我们建议配置 LDAP over SSL/TLS。GSSAPI 与 Active Directory 的绑定不支持 StartTLS。

    如果在已加入 Active Directory 域的计算机上运行 Linux 版 Tableau Server,则可以配置 GSAPI。请参见LDAP 与 GSSAPI (Kerberos) 绑定

本主题介绍了如何为 Tableau Server 和 LDAP 目录服务器之间的通信加密简单的 LDAP 绑定通道。

证书要求

您必须具有可用于加密的有效 SSL/TLS 证书。证书必须安装在运行 Tableau Server 的计算机上。

您安装的证书必须在用于 SSL/TLS 的密钥用法字段中包括 Key Encipherment。Tableau Server 将仅使用此证书来加密到 LDAP 服务器的通道。不会验证过期、信任、CRL 和其他属性。

注意:如果在分布式部署中运行 Tableau Server,则必须将 SSL 证书手动复制到群集中的每个节点。仅将证书复制到配置了 Tableau Server 应用程序服务器进程的那些节点。与群集环境中的其他共享文件不同,客户端文件服务不会自动分发用于 LDAP 的 SSL 证书。

将证书导入 Tableau 密钥存储

如果您的计算机上还没有针对 LDAP 服务器配置的证书,则您必须获取适用于 LDAP 服务器的 SSL 证书,并将其导入默认系统密钥存储。

使用“keytool”Java 工具来导入证书。在默认安装中,此工具随 Tableau Server 一起安装,位于 /opt/tableau/tableau_server/packages/repository.<installer version>/jre/bin/keytool

以下命令(适用于像 RHEL 这样的发行版)可导入证书:

sudo "$PROGRAMFOLDER"/packages/repository*/jre/bin/keytool -importcert -file "$CERTSDIR" -alias "$OPENLDAPSSLSERVER" -keystore /etc/opt/tableau/tableau_server/tableauservicesmanagerca.jks -storepass changeit -noprompt

Java 密钥存储的密码为 changeit。(不要更改 Java 密钥存储的密码)。

加密方法

Tableau Server 2021.1 和更新版本支持两种为简单绑定加密 LDAP 通道的方法:

  • StartTLS:这是 Tableau Server 2021.2 中用于与 Active Directory 通信的默认配置。从 Tableau Server 2021.2 开始,将强制为与 Active Directory 的简单绑定 LDAP 连接使用 TLS。对于新安装和升级方案,都将强制使用此默认 TLS 配置。

    注意:在与 Active Directory 和简单绑定通信时,Linux 版 Tableau Server 上仅支持 StartTLS 简单绑定。不支持与其他 LDAP 服务器类型或 GSSAPI 的通信使用 StartTLS。

    StartTLS 方法的工作原理是建立与 Active Directory 服务器的不安全连接。客户端服务器协商后,连接将升级到 TLS 加密连接。作为默认配置,此方案要求在 Tableau Server 上提供有效的 TLS 证书。不需要其他配置。

  • LDAPS:安全 LDAP(或 LDAPS)是一个标准加密通道,需要更多配置。具体而言,除了 Tableau Server 上的 TLS 证书外,还必须为目标 LDAP 服务器设置主机名和安全 LDAP 端口。

    任何 LDAP 服务器(包括 Active Directory 服务器)都支持 LDAPS。

为简单绑定配置加密通道

本节介绍如何将 Tableau Server 配置为对 LDAP 简单绑定使用加密通道。

Tableau Server 的新安装

如果您的组织使用 Active Directory 以外的 LDAP 目录,则无法使用 TSM GUI 安装程序将身份存储配置为 Tableau Server 安装的一部分。相反,您必须使用 JSON 实体文件来配置 LDAP 身份存储。请参见identityStore 实体

在配置 identityStore 实体之前,请将有效的 SSL/TLS 证书导入 Tableau 密钥存储,如本主题前面所述。

配置 LDAPS 需要在 identityStore JSON 文件中设置 hostname 和 sslPort 选项。

Active Directory 环境中的新安装

如果使用 Active Directory 作为外部身份存储,则必须运行 Tableau Server 安装程序的 GUI 版本。与用于安装 Tableau Server 的 CLI 进程不同,GUI 版本的安装程序包含用于简化和验证 Active Directory 配置的逻辑。

此处显示了配置 Active Directory 的 Tableau Server 安装程序 GUI。

如果要安装 Linux 版 Tableau Server 的新实例,并且 Tableau 密钥存储中安装了有效的 SSL/TLS 证书,我们建议您默认选项设置保留为 StartTLS。

如果要针对 LDAPS 进行配置,则在选择 LDAPS 选项之前输入 LDAP 服务器的主机名和安全端口(通常为 636)。

安装后,可以通过登录 TSM Web UI、单击“配置”选项卡、“用户身份和访问”,然后单击“身份存储”来对这些配置进行更改。

升级方案

如果要升级到 Tableau Server 的 2021.2 版本(或更高版本),并将 Active Directory 用作外部身份存储,则将对 LDAP 简单绑定连接强制使用加密通道。如果未配置加密通道,则升级将失败。

为了成功升级到版本 2021.2 或更高版本,必须满足以下条件之一:

  • 现有的 Tableau Server 安装已针对 LDAPS 进行配置,并且在 Tableau 密钥存储中包含证书。
  • 升级之前,Tableau 密钥存储中存在有效的 SSL/TLS 证书。在此方案中,默认的 StartTLS 配置将启用加密通道。
  • 您运行升级的 TSM GUI 版本,并在升级过程中选择“LDAP(未加密通道)”
  • 加密 LDAP 通道已禁用,如以下部分所述。

禁用默认的加密 LDAP 通道

如果要在 Linux 上运行 Tableau Server 并连接到 Active Directory,则可以禁用加密通道要求。

禁用之后,用于与 Active Directory 建立绑定会话的用户凭据在 Tableau Server 和 Active Directory 服务器之间以明文形式通信。

禁用新安装

如果将 Active Directory 用作身份存储,则必须使用 TSM GUI 来配置 Active Directory 连接。请参见配置初始节点设置

运行安装程序时,选择“LDAP(未加密通道)”

升级前禁用

如果要从较低版本升级到 Tableau Server 2021.2(或更高版本),请在升级之前先在较低版本的 Tableau Server 上运行以下命令:

tsm configuration set -k wgserver.domain.ldap.starttls.enabled -v false --force-keys
tsm pending-configuration apply

若要验证是否已设置密钥,请运行以下命令:

tsm configuration get -k wgserver.domain.ldap.starttls.enabled

The command should return false.

错误消息

可能会显示或记录以下错误消息。如果您看到这些错误

  • 验证您的证书是否有效并导入 Tableau 密钥存储,如本主题前面所述。
  • (仅 LDAPS)- 验证主机和端口名称是否正确。

安装程序 GUI

如果您在运行安装程序或升级 GUI 时错误配置了 LDAPS 或 StartTLS,将显示以下错误。

TLS handshake failed. Tableau Server and the Active Directory server could not negotiate a compatible level of security.

Vizportal 日志

如果使用 CLI 配置 LDAPS 或 StartTLS,则不会显示以下错误消息。相反,错误将记录在 /var/opt/tableau/tableau_server/data/tabsvc/logs/vizportal 的 vizportal 日志中。

Authentication with LDAP server failed. The provided credentials or configuration are either incorrect or do not have the necessary permissions to bind.
感谢您的反馈!