网络安全
Tableau Server 中有三个主要网络接口:
客户端到 Tableau Server:客户端可以是 Web 浏览器、Tableau Mobile、Tableau Desktop 或 tabcmd 实用工具。
Tableau Server 到数据库:为了刷新数据提取或处理实时数据库连接,Tableau Server 需要与数据库进行通信。
服务器组件通信:这仅适用于分布式部署。
在大多数组织中,Tableau Server 还配置为与 Internet 和 SMTP 服务器通信。
客户端到 Tableau Server
Tableau Server 客户端可以是 Web 浏览器、运行 Tableau Mobile、Tableau Desktop 或 tabcmd 命令的设备。Tableau Server 与其客户端之间的通信使用标准 HTTP 请求和响应。我们建议将 Tableau Server 配置为使用 HTTPS 进行所有通信。当针对 SSL 配置 Tableau Server 时,将会使用 SSL 加密客户端之间的所有内容和通信,并会将 HTTPS 协议用于请求和响应。
默认情况下,将使用 1024 位的公钥/私钥加密将来自浏览器和 tabcmd 的密码传送到 Tableau Server。此级别的加密被认为是进行安全通信时不足够可靠。此外,这种方法以明文形式向收件人发送公钥并且无网络层身份验证,因此易受到中间人攻击。
若要充分确保从客户端到 Tableau Server 的网络通信的安全,就必须使用受信任的证书颁发机构颁发的证书来配置 SSL。
请参见针对与来往 Tableau Server 的外部 HTTP 流量配置 SSL。
Internet 客户端访问
建议使用网关代理服务器以启用从 Internet 到 Tableau Server 的安全客户端访问。我们不建议在 DMZ 中或在其他受保护的内部网络之外运行 Tableau Server。
配置反向代理服务器并启用 SSL,以处理来自 Internet 的所有入站通信。在此情况下,反向代理是 Tableau Server 将与其通信的唯一外部 IP 地址(或地址范围,如果多个反向代理将要对入站请求进行负载平衡)。反向代理对发出请求的客户端透明,从而对 Tableau Server 网络信息进行模糊处理,简化了客户端配置。
有关配置信息,请参见为 Tableau Server 配置代理和负载平衡器。
单击劫持保护
默认情况下,Tableau Server 已启用单击劫持保护。此可帮助防止特定类型的攻击,在这些攻击中,攻击者会将一个透明的页面覆盖在一个看起来无害的页面上,以便诱骗用户单击链接或输入信息。在启用单击劫持保护的情况下,Tableau Server 会对嵌入视图进行一些限制。有关详细信息,请参见单击劫持保护。
Tableau Server 到数据库
Tableau Server 动态连接到数据库以处理结果集并刷新数据提取。每当可能时,它都会使用本机驱动程序连接到数据库,并在没有本机驱动程序时依赖于一个通用 ODBC 适配器。与数据库的所有通信都通过这些驱动程序来路由。这样,本机驱动程序安装过程将包括配置驱动程序以在非标准端口上通信或提供传输加密。这种配置类型对 Tableau 是透明的。
当用户在 Tableau Server 上存储外部数据源的凭据时,这些凭据以加密形式存储在 Tableau Server 的内部数据库中。如果进程使用这些凭据来查询外部数据源,进程会从此内部数据库检索加密的凭据,然后在进程中将它们解密。
Tableau Server 至 Internet
在某些情况下,用户连接到了外部数据源,如 Tableau 地图服务器,则 Tableau Server 将需要连接到 Internet。建议您在受保护的网络内运行 Tableau 的所有组件。因此,Internet 连接可能要求您将 Tableau Server 配置为使用转发代理。
Tableau Server 至 SMTP 服务器
您可以配置 Tableau Server 以便向管理员和用户发送电子邮件通知。自版本 2019.4 起,Tableau Server 支持为 SMTP 连接使用 TLS。请参见配置 SMTP 设置。
与存储库的通信
可以将 Tableau Server 配置为对在 Postgres 存储库和其他服务器组件之间交换的所有流量使用安全套接字层 (SSL) 进行加密通信。默认情况下,已为服务器组件和存储库之间的通信禁用了 SSL。
有关详细信息,请参见针对内部 Postgres 通信配置 SSL。
有关详细信息,请参见tsm security repository-ssl enable
群集中的服务器组件通信
分布式服务器安装中的 Tableau Server 组件间通信有两个方面:信任和传输。Tableau 群集中的每个服务器都使用一个严格信任模型来确保其接收来自群集中其他服务器的有效请求。群集中运行网关进程的计算机可接受第三方(客户端)的请求,除非它们前面有负载平衡器,在这种情况下负载平衡器将接收请求。未运行网关进程的服务器仅接受来自群集的其他受信任成员的请求。信任是通过 IP 地址、端口和协议的允许列表建立的。如果任何一部分无效,请求就会被忽略。群集的所有成员都可以互相通信。
当用户在 Tableau Server 上存储外部数据源的凭据时,这些凭据以加密形式存储在 Tableau Server 的内部数据库中。如果进程使用这些凭据来查询外部数据源,进程会从此内部数据库检索加密的凭据,然后在进程中将它们解密。