步驟 4:安全清單輸入和輸出位置
本主題說明套用至此功能的規則,以及如何安全列出網路上的目錄。
流量輸入與輸出連線可能需要連線至網路目錄中的資料庫或檔案。您必須安全列出要允許存取的目錄。輸入和輸出連線只允許連線至安全列出位置中的資料。預設情況下,不允許任何連線。
附註:您仍然可以將流程和內嵌在流程檔案 (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 "*"
) 以便允許任何網路目錄或指定的網路目錄路徑清單由分號 (;) 分隔。如果指定目錄路徑清單,請務必指定特定目錄,而不是檔案共用的根目錄。- 如果路徑包含空格或特殊字元,您必須使用單引號或雙引號。您是否使用單引號或雙引號取決於您所使用的殼層。
即使值設定為
*
,將不允許任何本機目錄路徑。若要將流程輸出儲存到網路共用,必須首先在 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,kernel 4.7 版本及更新版本僅搭配 Red Hat Enterprise Linux 版本 8 提供。- 若要將流程輸出儲存到網路共用,必須向有權存取 Tableau Server 資源的本機 Linux 帳戶授與對網路共用上目標目錄的「完全控制」權限。如果路徑在流程允許的清單和 internal_disallowed 清單上,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 設定進行設定。