在 Tableau Server 中管理儀表板和視覺效果擴充功能
Tableau 擴充功能是 Web 應用程式,可協助擴充 Tableau 工作簿中提供的分析功能。擴充功能使用 Tableau 擴充功能 API(連結在新視窗開啟) 無縫整合,以便與 Tableau 工作簿的其他部分進行互動。
儀表板擴充功能在自訂儀表板區域中執行,並可以與儀表板的其他部分進行互動。儀表板擴充功能讓使用者能夠直接在 Tableau 中與其他應用程式互動。視覺效果擴充功能在工作表中執行,讓使用者能夠使用自訂視覺效果類型。Tableau 使用者可將儀表板擴充功能作為儀表板物件進行存取,並透過工作表「標記」卡存取視覺效果擴充功能。
附註:伺服器管理員可以在伺服器上啟用儀表板和視覺效果擴充功能,或封鎖特定擴充功能執行。管理員可以將擴充功能新增到允許清單,並控制擴充功能可以存取的資料類型。伺服器管理員還可以設定站台上的使用者在新增或檢視擴充功能時是否看到提示。伺服器管理員另外可以封鎖在所有平台中使用特定擴充功能。如需擴充功能安全性與建議部署選項資訊,請參閱擴展程式安全性 - 部署的最佳實踐(連結在新視窗開啟)
有關在 Tableau 中使用儀表板擴充功能的資訊,請參閱使用儀表板擴充功能。
有關使用視覺效果擴充功能的資訊,請參閱將視覺效果擴充功能新增至工作表。
是否要尋找 Tableau Cloud?請參閱在 Tableau Cloud 中管理儀表板擴展程式(連結在新視窗開啟)。 (連結在新視窗開啟)
在 Tableau Server 上執行擴展程式之前
擴充功能是一個開放平台,但一般需要考慮兩項標準:
Tableau 受信任的擴充功能,即經過專門檢閱並部署在 Tableau 管理的主機上的擴充功能。這些擴充功能包括由 Tableau 建置和管理的解決方案;由 Tableau Exchange 合作夥伴建置並使用 Tableau 檢閱和託管服務進行部署的解決方案;以及託管在我們舊版沙箱化擴充功能受保護環境中的解決方案。
已啟用網路的擴充功能,即託管在任何協力廠商主機上的擴充功能。開發人員選擇在不涉及 Tableau 的情況下管理其擴充功能的交付時,已啟用網路的擴充功能非常有用。這包括合作夥伴直接管理以提供更佳生產支援的擴充功能;託管和部署在您自己的本機網路中的擴充功能;或需要與 Tableau 外部的協力廠商服務通訊的擴充功能。啟用網路的擴充功能可以完整存取 Web。
附註:Tableau 支援透過 Einstein Discovery 儀表板擴充功能與 Salesforce Einstein Discovery 整合。這是一個特殊的擴充功能,可以存取 Salesforce.com 中的資料,並且預設為允許。它不會被視為已啟用網路的擴充功能或沙箱化擴充功能。更多有關 Einstein Discovery 整合的資訊,請參閱Tableau Server 版本說明(連結在新視窗開啟) 。
Tableau 受信任的擴充功能
從 2025.3 開始,Tableau 受信任的擴充功能指的是 Tableau Exchange 中已提升權限以供使用的擴充功能子集。受信任的擴充功能託管在 Tableau 主機上,需要限制使用者用戶端與 Tableau 之間的通訊。這些擴充功能在部署前已進行網路通訊測試和漏洞掃描。此擴充功能標準用於提供更受控管的擴充功能存取權。此標準包括:
- 沙箱化擴充功能由 Tableau 託管,並採用 W3C 標準(例如內容安全性原則 (CSP)),以確保擴充功能無法在 Tableau 沙箱主機之外發起網路呼叫。沙箱化擴充功能可以查詢資料,但沙箱環境會明確封鎖將資料傳輸到其他地方。Tableau 2019.4 及更新版本中支援沙箱化擴充。預設情況下,如果為網站啟用擴充,則允許執行沙箱化擴充。
Tableau 建置的擴充功能是由 Tableau 開發團隊開發並積極維護的解決方案。Tableau 建置的擴充功能明確地旨在將通訊導向到使用者用戶端,而不是查詢使用者資料。這種設計可限制資料外流和資料保留的風險。Tableau 建置的擴充功能還遵循 Salesforce 軟體開發生命週期 (SDLC) 標準。預設情況下,若已為站台啟用擴充功能,則允許執行 Tableau 建置的擴充功能。
受信任的合作夥伴建置的擴充功能是由經認證的 Tableau 和 Salesforce 合作夥伴開發並積極維護的解決方案,這些合作夥伴都為 Tableau Exchange 做出了貢獻。Tableau 開發人員會在將這些協力廠商解決方案部署為 Tableau 受信任的擴充功能之前,先透過手動測試進行驗證。Tableau 開發人員會在將擴充功能部署到專用 Tableau 主機之前,對其進行功能和網路通訊測試以及自動程式碼掃描。受信任的合作夥伴建置的擴充功能可以由 Tableau 管理員啟用,以供使用。
已啟用網路的擴充功能
支援網路的擴充功能是 Web 應用程式,可以在任何設定為 Web 伺服器的電腦上執行。這包括本機電腦、網域中的電腦和協力廠商 Web 服務。由於已啟用網路的擴充功能可能託管在協力廠商伺服器上,並且可能存取工作簿中的資料,因此您需要僅允許您信任的擴充功能。請參閱測試啟用網路的擴充,以保障安全性.
預設擴充功能設定
管理員可以使用 Tableau Server 上擴充功能的設定來控制和限制允許執行的擴充功能。
預設情況下,擴充功能處於啟用執行狀態,除非明確停用。此設定可由伺服器管理員跨所有站台進行管理,也可由站台管理員針對任何指定站台停用。
我們建議允許使用 Tableau 受信任的擴充功能。預設情況下,若已為站台啟用擴充功能,則沙箱化擴充功能和 Tableau 建置的擴充功能均處於啟用執行狀態;受信任合作夥伴建置的擴充功能可由管理員啟用。
預設情況下,不允許任何支援網路的擴充功能,除非它們已明確新增至允許清單。僅允許使用 HTTPS 通訊協定的擴充功能執行,這可確保加密傳送和接收資料的管道(唯一的例外情況是
http://localhost)。某些擴充功能需要完整資料權限(對完整資料的存取權)。除非您明確將擴充功能新增至允許清單並授與其對完整資料的存取權,否則這些擴充功能無法在 Tableau Server 上執行。
控制擴充功能的使用
伺服器管理員可控制一個全域設定,以允許伺服器上所有網站的擴展程式。伺服器管理員還可將擴充(包括沙箱化擴充)放在一個全域封鎖清單上以防止它們執行(請參閱阻止特定擴展程式)。預設情況下,伺服器上啟用所有沙箱化擴充,但網站管理員可以選擇覆寫預設值並禁止網站的沙箱化擴充。
變更在伺服器上啟用擴展程式的全域設定
若要為伺服器變更此設定,請轉到「管理所有網站」>「設定」>「擴展程式」。如果伺服器只有一個網站,則全域控制將出現在網站的設定頁面上。
在「儀表板和視覺效果擴充功能」下,選取或清除「允許擴充功能在此伺服器上執行」核取方塊。若不選取此選項,則不允許擴充執行。此全域設定會覆寫每個站台的「允許擴充功能在此站台上執行」設定。
變更網站的預設設定
伺服器管理員可以控制是否為站台啟用擴充功能,以及是否在站台上允許 Tableau 受信任的擴充功能。也就是說,若伺服器上已啟用擴充功能,則預設站台設定允許在站台上使用沙箱化擴充功能和 Tableau 建置的擴充功能,前提是伺服器上未明確封鎖這些擴充功能。預設站台設定允許已啟用網路的擴充功能在註冊到站台的允許清單時執行。任何擴充功能都可以明確地新增到允許清單中,從而啟用該擴充功能,以在站台上使用。
若要為網站變更這些設定,請轉到「設定」>「擴展程式」。
在「儀表板和視覺效果擴充功能」下,設定下列選項:
- 允許擴充功能在此站台上執行
- 允許受信任的擴充功能在此站台上執行
伺服器管理員可從站台的允許清單中新增或移除擴充功能。將擴充功能新增至允許清單時,可以設定權限,允許擴充功能存取完整資料(若需要)。請參閱將擴充功能新增至允許清單並設定擴充功能。
使用允許清單
使用允許清單可允許特定擴充功能在站台上執行。允許清單主要用於已啟用網路的擴充功能。與已知 Tableau 主機提供且預設允許執行的 Tableau 受信任的擴充功能不同,已啟用網路的擴充功能除非明確新增至允許清單中,否則不允許執行。允許清單還可讓您控制是否要求使用者授與允許擴充功能執行的權限,以及擴充功能是否有權存取工作簿中的完整資料。
預設情況下,允許 Tableau 受信任的擴充功能執行,包括沙箱化擴充功能和 Tableau 建置的擴充功能。無需將這些擴充功能新增至允許清單,除非預設設定已變更且不再允許。這同樣適用於受信任的合作夥伴建置的擴充功能,若允許,則無需明確地將它們新增至允許清單。
識別擴充功能的 URL
作為 Web 應用程式,擴展程式與 URL 關聯。可以使用此 URL 來測試和驗證擴充功能。您還使用 URL 將擴展程式新增到允許清單以允許完整資料存取權限,或將擴展程式新增到阻止清單來停用任何存取。
若要允許已啟用網路的擴充功能或其他擴充功能,需要找到擴充功能的 URL,然後將該 URL 新增至允許清單。將 URL 新增至允許清單,即表示您核准與 Web 應用程式的通訊。有多種方法可以確定擴充功能的 URL。
來自 Tableau Exchange
使用從 Tableau Exchange 下載的擴充功能時,可以在 Exchange 清單頁面上找到該擴充功能的 URL。開啟擴充功能的動態磚,在「技術規格」下,尋找「託管於」標題下的 URL。

來自資訊清單檔
如果有擴展程式清單檔案 (.trex),即一個定義擴展程式屬性的 XML 檔案,您可以從 <source-location> 元素中找到 URL。若使用 Web 瀏覽器從 Tableau Exchange 下載擴充功能,則可以擷取資訊清單檔。在文字編輯器中開啟資訊清單檔。
<source-location>
<url>https://www.example.com/myExtension.html</url>
</source-location>
使用「關於」對話方塊識別儀表板擴充功能
對於儀表板擴充功能,可以從儀表板擴充功能內容功能表中的擴充功能屬性找到 URL。從「更多選項」功能表中,按一下「關於」。

「關於」對話方塊會列出擴充功能的名稱、作者、作者的網站以及擴充功能的 URL。

將擴充功能新增至允許清單並設定擴充功能
若要允許使用者存取已啟用網路的擴充功能,請將擴充功能新增至站台的允許清單。預設情況下,您將擴充新增到安全清單時,擴充只能夠存取摘要(或彙總)資料。您還可以控制使用者是否看到要求他們允許擴充功能存取資料的提示。您可能想要將擴充功能新增至允許清單(例如沙箱化擴充功能),以便您可以設定使用者是否看到提示。當您向使用者隱藏提示時,擴展程式可立即執行。
轉到「設定」>「擴展程式」。
在「啟用特定擴展程式」下,新增擴展程式的 URL。請參閱識別擴充功能的 URL。
提示:可以在 URL 中使用句點和星號 (
.*) 作為萬用字元,以允許特定網域或位置中的所有擴充功能。例如,要允許 example.com 下的網域中使用連接埠 8080 的所有擴充功能,可以新增 URL:https://example.com:8080/.*。有關詳細資訊,請參閱在允許清單 URL 中使用規則運算式。選取以允許或拒絕擴展程式完整資料存取權限。
完整資料存取權限是指存取檢視中基礎資料的使用權限,而不僅僅是存取匯總或彙總資料的使用權限。完整資料存取權限還包括有關其資料來源的資訊,例如連線、欄位和表的名稱。通常,若您要將要使用的擴充功能新增至允許清單,您還需要允許該擴充功能存取完整資料(若該擴充功能需要)。在將擴展程式新增到允許清單之前,一定要測試啟用網路的擴充,以保障安全性。
選取以顯示或隱藏使用者提示。
使用者將儀表板擴充功能新增至儀表板、將視覺效果擴充功能新增至工作表或與具有擴充功能的檢視互動時,預設情況下使用者會看到提示。提示告知使用者有關擴展程式詳情以及擴展程式是否能存取完整資料。使用者可以利用提示來允許或拒絕擴展程式執行。您可以向使用者隱藏提示,從而允許擴展程式立即執行。
阻止特定擴展程式
預設全域原則允許在 Tableau 中使用擴充功能。預設情況下,允許沙箱化擴充功能和 Tableau 建置的擴充功能執行。站台可以啟用受信任的合作夥伴建置的擴充功能以及出現在允許清單上的任何已啟用網路的擴充功能。伺服器管理員可以透過將特定擴充功能新增至伺服器的封鎖清單來阻止其執行。如果擴展程式位於全域封鎖清單上,則會覆蓋網站允許清單上該擴展程式的任何設定。
若要將擴展程式新增到伺服器的封鎖清單,請轉到「管理所有網站」>「設定」>「擴展程式」。在單網站安裝上,封鎖清單位於網站的「擴展程式」設定頁面上。
在「阻止特定擴展程式」下,新增擴展程式的 URL。請參閱識別擴充功能的 URL。
在允許清單 URL 中使用規則運算式
一般而言,將擴充功能新增至允許清單時,應使用該擴充功能的特定 URL。但是,有時您可能希望允許從同一網域和位置託管的多個擴充功能。在這種情況下,在 URL 中使用萬用字元會很方便。擴充功能設定支援使用規則運算式。
| 規則運算式 | 描述 |
. | 句點 (.) 是萬用字元,可用於匹配任何字元。若需要在 URL 中指定句點 (.) 而不是萬用字元,則可以使用反斜線 (\.) 逸出該字元。 |
* | 星號 (*) 是一個數量詞,可指定前一個字元的一個或多個執行個體。 |
使用萬用字元時請務必小心,以免允許清單過於寬鬆,從而無意中允許存取不應存取的擴充功能。
下表顯示了在 URL 中使用規則運算式的一些範例。請注意,這些範例不顯示擴充功能的通訊協定和完整 URL。僅允許使用 HTTPS 通訊協定的擴充功能(http://localhost 除外)。
| 要指定... | 範例 | 指定 |
| 網域範圍 | .*\.example.com | example.com 下的所有子網域。 |
| 所有連接埠 | example.com:.* | 允許從 example.com 上的所有連接埠存取擴充功能。 |
| 網域、連接埠和路徑下的所有擴充功能 | example.com:8080/xyz/.* | 允許存取 example.com 網域下使用連接埠 8080 且位於 zyz 的所有擴充功能。 |
| 一系列網域的所有連接埠 | .*\.example.com:.* | 允許存取 example.com 下所有子網域的所有連接埠上的擴充功能。 |
| 網域和路徑下與模式相符的所有擴充功能 | example.com/t.c/.* | 允許存取在資料夾下 example.com 上執行的與模式 t.c 相符的擴充功能。例如,tic、tac、toc。 |
測試啟用網路的擴充,以保障安全性
擴充功能是使用擴充功能 API 與 Tableau 中的資料互動的 Web 應用程式。若選擇允許未經 Tableau 直接檢閱和管理的已啟用網路的擴充功能,使用者應注意,這些擴充功能可能會發起網路呼叫並存取網際網路上的資源。Tableau 建議在推出已啟用網路的擴充功能以供廣泛採用之前對其進行測試和瞭解。
檢查原始檔案
擴充功能包含各種 HTML、CSS 和 JavaScript 檔案,以及一個定義擴充功能中屬性的 XML 資訊清單檔 (*.trex)。在檢閱已啟用網路的擴充功能時,我們建議直接聯絡擴充功能開發人員,以取得存取權和檢閱權限。Tableau 不會散佈或提供對其他開發人員來源檔案的存取權。
若擴充功能的程式碼在 GitHub 上公開可用,則可以在該處檢查或下載。在資訊清單檔 (*.trex) 中,可以找到來源位置或表明擴充功能託管位置的 URL、作者姓名以及聯絡作者或公司以取得支援的網站。<source-location> 元素會指定 URL,<author> 會指定組織名稱和用於聯絡以取得支援的網站 (website="SUPPORT_URL")。網站是使用者在儀表板擴充功能的「關於」對話方塊中看到的「取得支援」連結。
擴充功能會引用外部 JavaScript 程式庫,例如 jQuery 程式庫或協力廠商 API 程式庫。驗證外部庫的 URL 是否指向庫的受信任位置。例如,若擴充功能引用 jQuery 程式庫,請確保該程式庫位於被視為標準且安全的站台上。
所有擴充功能都需要使用 HTTPS 通訊協定 (https://) 來託管其擴充功能。您應檢查擴展程式的原始檔案,確保對外部庫的引用也使用 HTTPS 或者託管在擴展程式所在的同一網站上。如果擴展程式託管在 Tableau 所在的同一電腦 (http://localhost) 上,則無需使用 HTTPS。
盡可能確保瞭解代碼的作用。尤其是,試著瞭解代碼如何組建至外部網站的請求,以及請求中傳送了什麼資訊。特別是,請檢查任何使用者提供的資料是否經過驗證以防止跨網站指令碼。
瞭解資料存取
Tableau 擴充功能主要處理工作表或儀表板中顯示的摘要彙總資料。但是,擴充功能宣告需要完整資料存取權時,Tableau 擴充功能 API 會提供可以存取完整資料的方法。這些方法可以存取資料來源中使用中資料表和欄位的名稱、資料來源連線的摘要描述以及工作表中的完整資料。如果擴展程式在檢視中使用任何這些方法,擴展程式開發者必須在清單檔 (.trex) 中聲明擴展程式需要完整資料使用權限。聲明如下所示。
<permissions>
<permission>full data</permission>
</permissions>Tableau 會使用此聲明在執行時向使用者提供提示,讓他們可以選擇允許此存取。若擴充功能使用這些方法中的任何一種,而未在資訊清單檔中宣告完整資料權限,則擴充功能會載入,但方法呼叫會失敗。
有關擴展程式如何存取儀表板中的資料以及所使用的 JavaScript 方法的資訊,請參閱 Tableau Extensions API 中的存取基礎資料(連結在新視窗開啟)。為了更好地瞭解擴展程式可找出哪些資料相關資訊,您可以使用 DataSources(連結在新視窗開啟) 範例儀表板擴展程式(可從 Tableau Extensions API GitHub 存放庫(連結在新視窗開啟)獲得)來查看在調用 getDataSourcesAsync() 方法時公開了哪些資料。
在隔離環境中測試擴展程式
若可能,Tableau 建議在與生產環境和使用者電腦隔離的環境中測試擴充功能。例如,將儀表板或視覺效果擴充功能新增至執行不用於生產的 Tableau Server 版本的測試電腦或虛擬機器上的允許清單。
監視儀表板擴展程式建立的流量
若要評估已啟用網路的擴充功能可能使用的網路呼叫,請使用 Fiddler(連結在新視窗開啟)、Charles HTTP proxy(連結在新視窗開啟) 或 Wireshark(連結在新視窗開啟) 等 Web 偵錯工具來檢查擴充功能發出的請求和回應。確保您瞭解擴展程式所請求的內容。檢查流量以確保擴展程式不讀取與擴展程式的用途不直接相關的資料或代碼。
