Linux 版 Tableau Server 中的 FIPS 合规性

本主题介绍符合 FIPS 标准的 Tableau Server 版本。Linux 版 Tableau Server 版本 2025.3 中新增了 FIPS(联邦信息处理标准)合规性。Windows 版 Tableau Server 不符合 FIPS 标准。

FIPS 140-2 是美国政府的一项计算机安全标准,用于批准加密模块。这种合规性可确保 Tableau Server 中的所有加密操作都满足严格的安全要求,从而为您的数据提供更安全的环境。

FIPS 合规性对您意味着什么

对于大多数用户来说,使用 Tableau Server 的日常体验将基本保持不变。FIPS 合规性主要是一种底层增强功能,可增强服务器的安全态势。

  • 增强的安全性:当受到加密模块保护时,所有传输中和静态数据都将使用经过 FIPS 验证的算法。

  • 法规遵从性:Tableau Server for Linux 中的 FIPS 合规性可帮助组织满足强制要求 FIPS 140-2 合规性的特定政府和行业法规。

  • 用户影响:没有直接的用户影响。您无需更改发布工作簿、查看仪表板或与数据交互的方式。安全增强功能对最终用户工作流程是透明的。

在 FIPS 模式下安装 Tableau Server

在 FIPS 模式下安装 Tableau Server 意味着在 initialize-tsm script 中包含 --enable-fips 标志。用于安装和初始化 Tableau Server 的文档与非 FIPS 服务器相同,但 --enable-fips 标志除外。Tableau Server 实例处于或不在 FIPS 模式下。为任何实例首次运行 initialize-tsm 后,FIPS 模式即已设置,除非您重新安装 Tableau Server,否则无法更改。有关安装 Tableau Server 的详细信息,请参见安装和初始化 TSM

若要将 Tableau Server 实例从非 FIPS 模式转换为 FIPS 模式,请参见将数据还原到 FIPS 模式 Tableau Server

注意:FIPS 模式尚未经过测试,容器中的 Tableau Server 不支持该模式。

将 Tableau Server 的命令行工具与 FIPS 结合使用

在 FIPS 模式下安装 Tableau Server 时,安装过程中会向系统启动脚本中添加一个特殊的环境变量 TABLEAU_SERVER_ENABLEFIPS=true,以便系统用户在登录时自动为他们设置此环境变量。这可确保当用户运行 tsm tabcmd CLI 工具时,这些工具也将在 FIPS 模式下运行。虽然在 FIPS 模式下运行 tsmtabcmd 对于 FIPS 合规性很重要,但它也是正确功能的必要条件。

注意:不能在 FIPS 模式下将旧版本的 tsm 与服务器一起使用。

如何确定是否在 Tableau Server 上启用了 FIPS 模式

FIPS 模式会影响与 Tableau Server 的某些交互,包括何时可以将服务器备份还原到另一个实例,以及某些数据库连接如何要求身份验证。有几种方法可以确定服务器是否在 FIPS 模式下运行:

  • 在 TSM 中

    • 在命令行上运行 tsm version 命令,并在版本末尾查找“(FIPS)”:

      % tsm version
      Tableau Services Manager command line version 2025.3.0. (FIPS)
      Tableau Server version 2025.3.0. (FIPS)
      
    • 从 TSM UI 中打开“关于 TSM”对话框:

  • 使用 tabcmd:

    % tabcmd version
    Tableau Server Command Line Utility -- 2025.3.0 (FIPS)
  • 在 Tableau Server 中打开“关于 Tableau”对话框:

使用启用 FIPS 的 Linux 操作系统

FIPS 模式下的 Tableau Server 已在启用了 FIPS 的 RHEL 8(链接在新窗口中打开) 上进行了测试。Tableau Server 应能在任何受支持的 Linux 操作系统上以 FIPS 模式运行,但仅在 RHEL 8 上进行了测试。

您不必具有启用了 FIPS 的操作系统即可在 FIPS 模式下运行 Tableau Server,但是为了完全符合 FIPS 标准,您可能希望在启用了 FIPS 的操作系统上运行。您有责任理解并知道如何将操作系统配置为在 FIPS 模式下运行。

将数据还原到 FIPS 模式 Tableau Server

为了将数据还原到 FIPS 模式 Tableau Server,备份必须符合 FIPS 标准。但是,如果您运行的是 FIPS 兼容之前的 Tableau Server 版本,则该服务器无法生成符合 FIPS 标准的备份,并且您需要在创建符合 FIPS 标准的备份之前升级该实例。

作为最佳做法,我们强烈建议所有客户使用蓝/绿方法进行升级,因为这提供了一种在遇到困难时回退到原始服务器的方法。有关蓝/绿升级的详细信息s,请参见使用蓝/绿方法升级 Tableau Server

将非 FIPS 安装升级到 FIPS 模式

若要从 Tableau Server 的非 FIPS 版本迁移到 FIPS 模式版本,请执行以下操作:

  1. 备份非 FIPS 模式 Tableau Server。

    此备份是一种安全最佳做法,可用于在出错时还原原始服务器安装。

  2. 将非 FIPS 模式 Tableau Server 升级到支持 FIPS 的 Tableau Server 版本(2025.3.0 或更高版本)。

  3. 对升级的服务器进行备份。此备份将用于将数据还原到下一步中创建的启用 FIPS 的服务器实例。

    注意:升级的服务器将不会处于 FIPS 模式,但会生成符合 FIPS 标准的备份,因为它是 FIPS 感知的版本。

  4. 创建一个在 FIPS 模式下运行的新 Tableau Server 实例。

  5. 将备份数据还原到新的启用 FIPS 的实例。

注意:将 Tableau Server 升级到支持 FIPS 的版本后,该版本生成的备份将符合 FIPS 标准,即使 Tableau Server 实例未在 FIPS 模式下运行。

将 FIPS 模式安装升级到非 FIPS 模式

若要从 FIPS 模式安装转换为非 FIPS 安装,您可以按照类似的步骤操作。如果您这样做,最终的非 FIPS 安装必须仍然是禁用了 FIPS 模式的 FIPS 感知版本(2025.3.x 或更高版本)。

FIPS 实施机制

执行 FIPS 标准的工作由两个外部库(openssl(链接在新窗口中打开)bouncycastle(链接在新窗口中打开))处理。这些库经过 NIST 认证,只要使用它们的应用程序仅依赖它们来实现加密功能,就可以保证 FIPS 合规性。Tableau Server 的设计使所有加密函数都通过这两个库之一。

具体来说,Bouncycastle 库不会读取标准的 Java 密钥存储 cacerts 文件,因为它不符合 FIPS 标准。取而代之的是,Tableau Server 使用特定于 Bouncycastle 且符合 FIPS 标准的 BCFKS 密钥存储。此密钥存储的使用对用户基本上是透明的,除非他们要将自己的证书添加到操作系统信任存储,以便如 Tableau Desktop 和 Web 制作文档(链接在新窗口中打开)中所述,通过 (m)TLS 与其 JDBC 数据源进行安全通信。除了执行这些步骤之外,并且在运行 update-ca-certificates 之后,用户还应在 Tableau Server 安装目录中运行名为 update-cacerts 的附加脚本,该脚本会将 OS 信任存储 cacerts 文件的内容转换为符合 FIPS 标准的 cacerts.bcfks后者将与 OS 信任存储文件在同一目录中创建。

通过 JDBC 连接到 PostgreSQL 数据库就是 FIPS 实施的一个例子。两个最常见的错误是服务器或数据库用户未配置为使用 scram-sha-256 密码加密(链接在新窗口中打开),而是使用 md5 密码加密,或者数据库用户的密码小于 Bouncycastle 库规定的长度 112 位(14 字节)。在 Tableau Server 处于 FIPS 模式下连接到 PostgreSQL 时,用户可能会遇到一个或两个错误,具体取决于其用户配置和凭据。在 FIPS 模式下运行软件时,此类错误很常见,并且是在非 FIPS 模式下和 FIPS 模式下运行 Tableau Server 的区别。

FIPS 边界

在启用了 FIPS 的操作系统上以 FIPS 模式运行 Tableau Server 意味着,在启用了 FIPS 的操作系统上运行的软件和直接在该操作系统上运行的 Tableau Server 软件已启用 FIPS,并且将强制执行 FIPS 标准。但是,其他软件将连接到该 Tableau Server,包括 Tableau 编写的软件,并且不会对该软件的 FIPS 合规性进行任何声明。如果操作系统未启用 FIPS,则情况也是如此。这包括但不限于 Web 浏览器和 Tableau Desktop。

此外,FIPS 标准仅涉及强制执行正在使用的加密算法。FIPS 不一定反映软件系统的整体安全状况。例如,在上面使用 PostgreSQL 的示例中,一个用于密码加密的选项名为“password”,这意味着无加密。也就是说,密码以明文形式发送。这是所有协议中最不安全的密码传输协议,但在技术上符合 FIPS 标准,因为没有加密算法在起作用。如果用户将其 Postgres 数据库配置为接受明文密码,则 FIPS 模式下的 Tableau Server 在连接时将不会出错。用户需要了解他们正在使用的安全设置。在 FIPS 模式下运行 Tableau Server 只能保证使用的加密算法符合 FIPS 标准。

 

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