步骤 4:安全列表输入和输出位置
本主题介绍适用于此功能的规则,以及如何将网络上的目录放入安全列表中。
流程输入和输出连接可能需要连接到网络上目录中的数据库或文件。必须将要允许访问的目录放入安全列表中。只允许输入和输出连接连接到安全列表的位置中的数据。默认情况下不允许连接。
注意:您仍可以将流程文件 (tflx) 中嵌入的流程和任何数据发布到 Tableau Server,仍然可以将流和嵌入在流文件 (tflx) 中的任何数据发布到 Tableau Server,但如果目录未包含在组织的安全列表中,则流程将无法运行。
如何将输入和输出位置放入安全列表
以下规则适用,在配置此设置时必须加以考虑:
Tableau Server 应可访问这些目录路径。这些路径在服务器启动期间和流程运行时进行验证,在将流程发布到 Tableau Server 时不会进行验证。
网络目录路径必须是绝对路径,并且不能包含通配符或其他路径遍历符号。例如,
\\myhost\myShare\*
或\\myhost\myShare*
是无效路径,并将导致所有路径都不被允许。将 myShare 下的任何文件夹放入安全列表的正确方法是\\myhost\myShare
或\\myhost\\myShare\
。注意:
\\myhost\myShare
配置将不允许\\myhost\myShare1
。为了将这两个文件夹都放入安全列表,请在安全列表中将它们以 \\myhost\myShare; \\myhost\myShare1 形式列出。Windows:
值可以是
*
(例如,tsm configuration set -k maestro.input.allowed_paths -v "*"
)以允许任何网络目录或指定的网络目录路径列表(以分号(;)分隔)。如果指定目录路径列表,请确保指定特定目录,而不是文件共享的根目录。- 如果路径包含空格或特殊字符,则必须使用单引号或双引号。是使用单引号还是双引号取决于您使用的 shell。
即使将值设置为
*
,也不允许使用本地目录路径。若要将流程输出保存到网络共享,必须首先在 Tableau Server 上配置用户运行身份(链接在新窗口中打开)服务帐户。不能使用默认系统帐户将流程保存到网络共享。然后,为创建的用户运行身份帐户在网络共享上配置目标目录,以获得“完全控制”权限。
根据组织管理嵌套文件夹权限的方式,您可能需要在文件夹分层结构中授予其他权限,并至少授予“读取”、“写入”、“执行”、“删除”和“列出文件夹”权限,以允许用户运行身份帐户访问目标文件夹。
Linux:
值可以表示任何路径的
*
(例如,tsm configuration set -k maestro.input.allowed_paths -v "*"
),包括本地路径(使用“native_api.internal_disallowed_paths”配置的某些系统路径除外)或路径列表(以分号(;)分隔)。使用的内核版本必须等于或高于4.7。4.7 之前的内核版本上不支持网络共享的安全列表。在早期版本中,当输出写入网络共享时,hyper 无法输出文件,从而导致流程在运行时失败。从早期版本的网络共享读取输入文件时,流程会执行失败。若要检查内核版本,请在 Linux 终端中键入命令
uname -r
。这将显示在 Linux 计算机上运行的内核的完整版本。请注意,对于 Red Hat Enterprise Linux,内核版本 4.7 及更高版本仅适用于 Red Hat Enterprise Linux 版本 8。- 若要将流程输出保存到网络共享,必须向有权访问 Tableau Server 资源的本地 Linux 帐户授予网络共享上目标目录的“完全控制”权限。如果路径同时位于允许的列表和 internal_disasslowed 列表中,则 internal_disallowed 优先。
流程使用的输入和输出路径的挂载点必须使用native_api.unc_mountpoints
配置键进行配置。例如:tsm configuration set -k native_api.unc_mountpoints -v 'mountpoints'
有关配置此内容的信息,请参见此 Tableau 知识库帖子:Linux 版 Tableau Server - 如何连接到 Windows 共享目录(链接在新窗口中打开)。
使用以下命令创建允许的网络目录路径列表:
对于输入连接:
tsm configuration set -k maestro.input.allowed_paths -v your_networkdirectory_path_1;your_networkdirectory_path_2
tsm pending-changes apply
对于输出连接:
tsm configuration set -k maestro.output.allowed_paths -v your_networkdirectory_path_1;your_networkdirectory_path_2
tsm pending-changes apply
重要信息:
这些命令将覆盖现有信息,并将其替换为您提供的新信息。如果要向现有列表中添加新位置,则必须提供所有位置、现有位置和要添加的新位置的列表。使用以下命令可查看输入和输出位置的当前列表:tsm configuration get -k maestro.input.allowed_paths
tsm configuration get -k maestro.output.allowed_paths
后续步骤
谁可以执行此操作
在 Windows 上,本地计算机管理员组的成员可以运行 tsm 命令。
在 Linux 上,tsmadmin 组的成员可以运行 tsm 命令。Tsmadmin 组可以使用 tsm.authorized.groups 设置进行配置。