擴展程式安全性 - 部署的最佳實踐
這些最佳做法適用於 IT 專業人員和管理員、Tableau 伺服器和站台管理員,以及任何有興趣將儀表板和視覺效果擴充功能與 Tableau 一起使用的人。擴充功能提供大量機會來擴充功能和自訂 Tableau 的使用,以滿足每個客戶的分析需求。這種可擴充功能性應始終包括對其資料和商業安全性的適當注意事項。最佳做法適用於同時包含 Tableau Desktop、Tableau Server 或 Tableau Cloud 使用者群組的部署環境。
Tableau 中的擴展程式安全性
擴充功能是擴充儀表板功能或向 Tableau 新增視覺效果的 Web 應用程式。這些解決方案可以直接由 Tableau 處理,也可以完全作為第三方自訂服務提供。這些服務可以在自己的網路中託管,也可以由網路外部的外部供應商提供。擴充功能與工作簿中的其他元件互動,並使用 Tableau 分析內容為終端使用者建立整合體驗。為了提供這種整合體驗,擴充功能可以存取工作簿中使用的可見摘要資料。在「特定設定」下,他們還可根據需要存取工作簿中的基礎資料。此存取和互動層級由 Tableau 擴充功能 API 啟用,該 API 是作為 Tableau 平台的一部分設計和支援的。
Tableau 支援兩種擴充功能標準:
Tableau 信任擴充功能
為了支援擴充功能在其社區中廣泛使用,Tableau 管理服務以幫助提供擴充功能以供大規模使用。這些擴充功能可以由 Tableau 直接作為平台功能進行建置和維護,也可以由 Salesforce 或 Tableau 合作夥伴開發人員來建置和維護,這些開發人員與 Tableau 的產品團隊密切合作,共同部署解決方案,以供 Tableau Exchange 廣泛社群使用。Tableau 信任擴充功能始終託管 Tableau 基礎結構上,由 Tableau 產品和開發團隊進行管理和控管。Tableau 在部署或更新每個擴充功能之前對其進行測試和審核。Tableau 有嚴格的要求,只允許使用者用戶端和存取控制的 Tableau 擴充功能主機之間進行通訊。透過此設計,Tableau 可以針對常見的擴充功能需求提供標準,這些標準對其社群可能很有用。為了滿足此標準,Tableau 採用不同的解決方案來實現這一目標:

沙箱化擴充功能
Tableau 主機沙箱化擴充功能,在經過專門設定的受保護環境中執行,以消除資料洩露的風險。
封鎖 Tableau 沙箱化擴充功能主機,無法使用 Web 上的任何其他資源或服務。沙箱化擴充功能可以試驗擴充功能 API 工作簿中的資料,但不能將該資料傳送到沙箱以外的任何位置。查詢結果位於用戶端電腦上(在瀏覽器中),無法傳送到任何位置。受限存取可確保只有 Tableau 員工管理沙箱化擴充功能的所有更新,並且只有員工才能存取此擴充功能主機。沙箱化擴充功能環境和託管服務已由第三方顧問進行滲透測試。預設情況下啟用沙箱化擴充功能以供使用,並啟用以供 Tableau Public 使用。
Tableau 建置擴充功能
Tableau 建置的擴充功能由 Tableau 託管。具體而言,這些擴充功能是由 Tableau 開發團隊作為平台功能建置和維護的。與 Tableau 建置的其他功能一樣,Tableau 建置的擴充功能也經過 Salesforce SDLC 標準。這些擴充功能旨在將 JavaScript 傳遞到用戶端電腦。這允許用戶端呈現和處理擴充功能。這些功能由 Tableau 團隊直接支援,並透過同一 Tableau 受信任的主機基礎結構進行部署。預設情況下,Tableau 建置的擴充功能啟用供使用,並啟用供 Tableau Public 使用。
受信任的合作夥伴建置的擴充功能(加入)
受信任的合作夥伴建置的擴充功能由第三方合作夥伴開發人員開發,但由 Tableau 審核和託管。透過管理合作夥伴開發人員(其中許多也是長期的社區領導者)的部署,這些新的解決方案可以在 Tableau 和第三方 Tableau Exchange 合作夥伴之間聯合交付。Tableau 測試每個第三方解決方案(和每個更新),然後再將其部署以供生產使用。這包括功能和網路通信測試,以及自動代碼掃描以查找要解決的漏洞。與其他 Tableau 受信任的擴充功能一樣,這些擴充功能僅允許使用者用戶端和 Tableau 主機之間進行通訊。對主機的直接存取受到控制,並且僅限於 Tableau 員工。雖然 Tableau 無法直接對這些第三方解決方案進行更改或應用修復,但服務的正常執行時間和可用性由 Tableau 控制。受信任的合作夥伴建置的擴充功能需要管理員啟用它們才能使用,但通常建議並且已啟用以供 Tableau Public 使用。
已啟用網路的擴充功能
啟用網路的擴充功能是不受 Tableau 管理的擴充功能。它們可以託管在位於本機網路內部或外部的 Web 伺服器上,並擁有對網路的完全存取權。這允許啟用網路的擴充功能滿足 Tableau 標準之外更具體的整合需求或自訂部署目標。支援網路的擴充功能可以與其他應用程式和服務連線,為 Tableau 提供新的整合功能。這包括非 Tableau 自然語言產生或對回寫方案的支援。支援網路功能的擴充功能可以完全存取網絡,這代表它們可以透過連線到外部資源來提供豐富的功能和體驗。但是,由於它們可能會與其他服務通訊並且不受 Tableau 管理,因此我們建議在大規模部署或採用之前評估啟用網路的擴充功能。
本機部署啟用網路的擴充功能
擴充功能可以支援部署靈活性,例如在本機網路內本機執行擴充功能。這對於具有實體隔離斷網網路要求的部署或喜歡管理自己的擴充功能組織特別有用。例如,內部開發人員可以建置滿足特定部署需求的自訂擴充功能。啟用網路的擴充功能支援自我部署的目標。由於這些本機擴充功能在非 Tableau 主機上執行,並經歷自己的自訂版本定義,我們鼓勵您與開發人員合作,適當規劃如何為部署中的使用者管理此內部擴充資源和相關流程。根據設計,支援網路的擴充功能架構允許完全存取 Web;因此,客戶有責任開發自己的審核流程,以確保擴充功能僅與允許的 Web 資源進行通信,並具有適當的網路安全保護措施來防範風險。啟用本機網路的擴充功能需要由 Tableau 管理員新增到部署擴充安全清單中,然後才能允許使用。Tableau Public 不使用這些本機解決方案。
第三方提供者管理的啟用網路的擴充功能
支援網路的擴充功能架構還允許擴充功能由受信任的第三方供應商提供服務,例如直接由已建立正式供應商關係的 Tableau 合作夥伴提供服務。在這些情況下,支援網路的擴充功能(不由 Tableau 管理)允許提供者提供直接生產支援或自訂服務。如果以受信任的方式處理,這可以簡化和擴充功能信譽良好的供應商支援的 Tableau 自訂。我們建議客戶直接與第三方提供者合作,以便更全面地瞭解提供者的開發實踐、擴充功能程式碼設計和安全性如何滿足其內部準則。這些啟用網路的擴充需要由 Tableau 管理員新增到部署擴充安全清單中,然後才能允許使用。在極少數情況下,這些解決方案可以作為社群目標的唯一例外 Tableau Public 使用。
啟用網路的擴充功能風險注意事項
由於擴充功能是 Web 應用程式,因此已啟用網路的擴充功能可能易受特定類型的惡意攻擊,從而可能對電腦或資料造成風險。開啟 Web 應用程式安全性專案(連結在新視窗開啟) (OWASP) 每年都會找出最嚴重的 Web 應用程式安全性風險。這些風險包括:
- SQL 插入
- 跨網站指令碼 (XSS)
- 敏感性資料外洩
如果擴充功能的開發人員未正確驗證並處理使用者輸入,或者如果他們生成動態查詢以存取敏感資料庫,則這些風險可能會損害此擴充功能。當您評估要在 Tableau 中允許的擴展程式時,請務必考慮它們管理驗證、資料存取或使用者輸入的方式,以及它們減輕安全性風險的方式。
透過啟用網路的擴充功能緩解安全威脅
瞭解擴展程式的作用是為您的企業識別風險的第一步。儀表板或視覺效果擴充功能一般不會存取工作簿中的基礎資料,並且所有 JavaScript 程式碼都會在使用者電腦上執行的瀏覽器內容中執行。在這些情況下,即使擴充功能可能在網域之外的第三方站台上託管,電腦也不會保留任何資料。某些擴展程式允許您將 Tableau 與已在網域中部署的其他應用程式連線。
Tableau 為擴展程式提供安全性措施和安全性需求。已為 Tableau Desktop、Tableau Server 與 Tableau Cloud 啟用這些要求。
- 所有擴展程式都必須使用 HTTP 安全 (HTTPS) 通訊協定。
- 預設情況下,任何人如果使用已啟用網路的擴充功能的儀表板,則會提示並要求擴充功能權限方可執行。如果該擴充功能要存取基礎資料,則必須提供權限。
- 要在 Tableau Server 或 Tableau Cloud 執行,必須在允許清單中新增啟用網路的擴充功能 URL。伺服器管理員負責為 Tableau Server 管理此清單;而站台管理員負責為 Tableau Cloud 管理此清單。
- 在 Tableau Server 和 Tableau Cloud 上,伺服器或站台管理員可以(分別)控制是否為每個啟用網路的擴充功能顯示提示。
如需更多資訊,請參閱 在 Tableau Server 中管理儀表板和視覺效果擴充功能。
使用 Tableau 管理擴展程式
擴充功能提供在儀表板中新增為唯一功能以及在工作簿中新增視覺化的方法。您可以使用擴展程式,直接將儀表板與 Tableau 以外的應用程式整合。雖然擴展程式開啟一個充滿可能性的世界,但有些情況下您需要或希望保持對公司或企業中擴展程式部署方式的控制。在這方面,擴展程式與您打算使用的任何其他軟體沒有不同。在公司部署軟體應用程式之前,應先仔細測試並確認該軟體是否如預期般運作並且是否安全。擴展程式也是如此。
首先,確定您的使用者應具有的存取級別,並確定您想要使用的擴充功能(或相反,您不想使用的擴充功能)。然後使用 Tableau 中的控制項和功能來限制和整理使用者有權存取的儀表板和視覺效果擴充功能。
- 是否需要限制可以在 Tableau Desktop 新增或使用擴展程式的人員?請參閱 Tableau Desktop 的建議
- 是否要限制或控制使用者可以存取的擴展程式?請參閱 Tableau Server 和 Tableau Cloud 的建議。
Tableau Desktop 的建議
您有一系列選項,可用於在貴公司部署 Tableau Desktop。您可以允許不受限制地存取擴充功能,也可以對有權限存取擴充功能的人員及在哪些情況下可以存取進行限制。
預設情況下,Tableau Desktop 使用者可以不受限制地存取沙箱化擴充功能和啟用網路的擴充功能。Tableau 提供五個選項,可以在安裝期間以任何排列方式使用這些選項來變更預設設定。
- 關閉所有擴充功能 (
DISABLEEXTENSIONS) - 關閉啟用網路的擴充功能 (
DISABLENETWORKEXTENSIONS)。 - 關閉沙箱化擴充功能(
DISABLESANDBOXEXTENSIONS)。 - 關閉 Tableau 建置的擴充功能(
DISABLETABTRUSTEDEXTENSIONS)。 - 關閉受信任合作夥伴建置的擴充功能(
DISABLE3PTRUSTEDEXTENSIONS)。
附註:安裝 Tableau Desktop 之後,您可以透過編輯登錄 (Windows) 或在每個 Desktop 上執行指令碼 (Mac) 來變更這些設定。請參閱 [關閉儀表板擴充]。
部署情境範例
您可以使用安裝設定,透過多種方式部署 Tableau Desktop。
允許所有擴充功能 - 在此部署方案中,可以選擇信任 Tableau 作者,讓他們選取他們想要使用的 Tableau 受信任擴充功能和啟用網路的擴充功能。如果要為 Tableau Desktop 使用者提供最大的靈活性,請使用預設安裝設定。使用預設設定,Tableau Desktop 使用者可以不受限制地存取 Tableau 信任和啟用網路的擴充功能。預設設定為:
DISABLEEXTENSIONS=0和DISABLENETWORKEXTENSIONS=0。請參閱透過命令列安裝 Tableau Desktop。僅允許 Tableau 受信任的擴充功能 - 在此方案中,您委託 Tableau 擴充功能服務來適當地審查、部署和管理供廣泛社群使用的擴充功能,但不確定啟用網路的擴充功能,且目前希望禁止使用。若要關閉對啟用網路的擴充功能的支援,請設定
DISABLENETWORKEXTENSIONS屬性(DISABLENETWORKEXTENSIONS=1)。保留啟用擴充功能的預設設定(DISABLEEXTENSIONS=0)。請參閱透過命令列安裝 Tableau Desktop。僅允許使用沙箱化擴充功能 - 在這種情況下,可能以前使用過沙箱化擴充功能,並且認為使用起來可以安全使用。
但您尚未準備好更新原則,以便更廣泛地使用 Tableau 建置和受信任的合作夥伴建置的擴充功能;您也不想變更原則以允許啟用網路的擴充功能。您只想允許按原樣使用沙箱化擴充功能,並且希望防止它們使用所有其他形式的 Tableau 受信任和啟用網路的擴充功能。若要關閉對啟用網路的擴充功能、Tableau 建置擴充功能和受信任合作夥伴建置擴充功能的支援:設定DISABLENETWORKEXTENSIONS屬性(DISABLENETWORKEXTENSIONS=1)、DISABLETABTRUSTEDEXTENSIONS屬性(DISABLETABTRUSTEDEXTENSIONS=1)、DISABLE3PTRUSTEDEXTENSIONS屬性(DISABLE3PTRUSTEDEXTENSIONS=1)。保留啟用擴充功能的預設設定(DISABLEEXTENSIONS=0)。請參閱透過命令列安裝 Tableau Desktop。不允許使用擴充功能 - 在這種情況下,不希望允許使用者使用任何類型的擴充功能。在這種情況下,可使用
DISABLEEXTENSIONS屬性 (DISABLEEXTENSIONS=1) 關閉對所有擴充功能的支援。請參閱 [透過命令列安裝 Tableau Desktop]。
使用設定組合 您可能有一些使用者需要且應該不受限制地存取所有擴充功能,而其他使用者只要存取沙箱化擴充功能便足夠,最後還有一些使用者根本不需要存取擴充功能。由於擴充功能選項需分別為每個桌面設定,因此您可以為特定使用者及其使用案例設定部署。
Web 創作 - 如果您的使用者可以使用 Tableau Server 或 Tableau Cloud,他們就可以使用 Web 創作來存取擴充功能。在 Web 創作中,會套用擴充功能的伺服器或網站設定。在這種情況下,伺服器和網站管理員可以決定允許使用者存取哪些擴展程式。這是根據伺服器和站台擴充功能設定進行管理的,其中包括 Tableau 受信任的擴充功能選項和顯式啟用網路的擴充功能的擴充功能安全清單。

Tableau Server 和 Tableau Cloud 的建議
如果您的使用者可以存取 Tableau Server 或 Tableau Cloud,就可以使用內建安全性控件為可以使用的擴充功能及其使用情況設定限制。如果已在 Tableau Desktop 中關閉擴展功能,仍然可以允許使用者在網頁製作中新增擴充功能,但可以將能夠使用的擴充功能數量限制為您批准執行的數量。

允許 Tableau 信任擴充功能和已啟用網路功能的擴充功能進入安全清單
從 Tableau 2025.3 開始,Tableau 預設允許執行一些 Tableau 信任擴充功能。這代表沙箱化擴充功能和 Tableau 建置擴充功能可以提升使用,而受信任合作夥伴建置擴充功能可以由管理員啟用。雖然我們鼓勵使用所有 Tableau 信任擴充功能,就像我們對 Tableau Public 等環境所做的那樣,但我們最終認為管理員定義與其部署相關的原則至關重要。
不允許已啟用網路的擴充功能,除非已將其新增至允許清單中。管理員可以編輯設定,並將啟用網路功能的擴充功能新增到站台的安全清單中(設定 > 擴充功能 > 啟用特定擴充功能)。
附註 要使允許清單成為 Tableau 2018.2 和 Tableau 2018.3 中擴充功能的預設行為,必須變更網站的某些設定。在 [擴展程式] 設定頁面的 [擴展程式預設行為] 下,清除 [啟用未知擴展程式] ...選項。在 Tableau Server 2019.1、Tableau 2019.2 和 Tableau 2019.3 中,在預設情況下,除非將擴充功能新增至允許清單,否則不允許執行任何擴充功能。
允許清單的檢查清單:
- 擴展程式是否來自您瞭解且信任的來源?
- 檢查擴展程式的 URL。URL 是否可疑或包含可疑的網域名稱?
- 擴展程式是否需要存取完整(基礎資料)或摘要資料?請參閱 瞭解資料存取
- 在允許廣泛使用之前測試擴展程式。請參閱 [測試擴展程式的安全性]。請參閱測試啟用網路的擴充,以保障安全性.
將擴展程式新增到允許清單:
- 請參閱 將擴充功能新增至允許清單並設定擴充功能。
阻止特定擴展程式在 Tableau Server 上執行
在 Tableau Server 上,您可以透過將特定擴展程式的 URL 新增到封鎖清單來封鎖它們。如果您為擴展程式設定多個不同的網站,這將非常有用。例如,如果您擁有一個測試網站,您希望能夠在該網站測試內部或協力廠商擴展程式,則您可能已為擴展程式啟用預設行為,其中允許執行未列出的擴展程式,前提是它們不會存取工作簿中的基礎資料。將擴充功能新增至封鎖清單可防止無意中在測試站台中使用。
- 在封鎖清單新增那些您不想允許的擴充功能的 URL。此選項僅在 Tableau Server 上可用。請參閱 阻止特定擴展程式。
關閉網站的擴展程式
預設在 Tableau Server 和 Tableau Cloud 上啟用擴展功能。在 Tableau Server 上,伺服器管理員可以關閉網站的擴充功能。在 Tableau Cloud,站台管理員可以關閉站台的擴充功能。在 Tableau Server 上,伺服器管理員可以完全關閉擴充功能,而這會覆寫網站設定。您不必在伺服器或站台中變更此設定,因為您可以使用允許清單控制那些您想要允許的已啟用網路的擴充功能。還可以控制 Tableau 信任擴充功能的設定,其中預設情況下允許沙箱化擴充功能和 Tableau 建置擴充功能。
- 若要停用站台 (Tableau Cloud) 上的擴充功能,請變更允許使用者在該站台執行擴充功能的站台設定。請參閱 控制擴充功能的使用。
顯示或隱藏使用者提示以執行啟用網路的擴充
將啟用網路的擴充新增至允許清單時,您可以設定在預設情況下,當使用者將擴充新增到儀表板,或在與包含擴充的檢視交互時,他們是否看到提示。提示告知使用者有關啟用網路的擴充詳情以及擴充是否能存取完整資料。使用者可以利用提示來允許或拒絕擴展程式執行。您可以向使用者隱藏提示,從而允許擴展程式立即執行。當為網站啟用時,預設情況下允許沙箱化擴充,並且不提示使用者。
關閉所有或部分 Tableau 信任擴充功能
從 Tableau 2025.3 開始,Tableau 允許某些 Tableau 信任擴充功能在 Tableau Server 上執行,並預設 Tableau Cloud。沙箱化擴充功能和 Tableau 建置擴充功能會提升以供使用,而受信任合作夥伴建置的擴充功能可由管理員啟用。沙箱化擴充在受保護的環境中執行,並由 Tableau 託管。Tableau 建置的擴充功能由 Tableau 開發和維護,並由 Tableau 託管。受信任合作夥伴建置的擴充功能由第三方合作夥伴開發人員開發和維護,但其解決方案和更新由 Tableau 審核和託管,以確保可用性和規模。
管理員可以控制是否允許使用者在站台上執行所有、部分或不執行 Tableau 信任擴充功能。信任擴充功能不需要新增到安全清單中。啟用 Tableau 信任擴充功能後,使用者可以自由地將 Tableau 信任擴充功能新增到工作簿中,並可以開啟和使用包含 Tableau 信任擴充功能的工作簿。如果需要封鎖 Tableau 信任擴充功能,請聯絡 Tableau,詢問要新增到伺服器封鎖清單中的具體擴充程式 URL。
伺服器管理員可將任何擴充功能新增到其部署全域封鎖清單中。如果需要完全關閉 Tableau 信任擴充功能,可以變更站台的預設設定。如果變更 Tableau 信任擴充功能的預設設定,則只有安全清單中的擴充功能才能執行。
