在 Metabase 中管理人員

如何從管理數十位使用者擴展到數千位。

本文概述如何設定和擴展自助式分析。我們將保持在高層次,並連結到關於個別功能的更詳細指南,而我們在這裡的重點將放在 Metabase 的管理,特別是您組織中的人員管理。對於運營規模擴展 - Metabase 應用程式的實際運行 - 請查看「Metabase 的規模化」。

在您的組織中普及資料的目標是讓人員獲得他們做出更好決策所需的資訊。而最好的方法是讓每個人都能存取盡可能多的資料,同時確保他們看不到任何他們不應該看到的資料。

為此,我們建議您組織您的 Metabase,目標是簡化權限。您可能基於各種原因(付款、稅務、責任等)收集敏感資料,但這些資料與商業智慧無關(儘管它可能與相關資料混合在一起)。我們的想法是在關鍵位置設置硬性界線,這樣您就不必擔心誰可以看到什麼,然後建立輕量級系統 - 甚至只是慣例 - 隨著人員數量的增長,保持場所整潔。

1. 在 Metabase 中建立群組

Metabase 使用群組管理權限,這比為每個人設定權限更有效率且更易於管理。我們建議您設定您的 Metabase,以便您的身分提供者中的群組對應到 Metabase 中的相同群組。一般來說,您的群組應對應到您組織中的部門,也可能對應到跨部門的專案或任務團隊。這樣一來,一旦會計部門的新人員開始工作,他們將登入 Metabase,並且已經可以存取會計部門其他人員擁有的相同資料庫和集合。

群組管理員

在 Pro 和 Enterprise 方案中,您可以委派群組管理員,他們可以將人員新增到群組並從群組中移除人員。

2. 將權限指派給這些群組,包括沙箱

Metabase 中基本上有兩種權限類型:資料權限,它決定對資料庫的存取權;以及集合權限,它決定對 Metabase 中項目(如問題和儀表板)的存取權。這些權限在表格或集合層級運作,但如果您需要限制對列或欄的存取權,該怎麼辦?

為所有使用者隱藏不相關或技術性資料

如果有欄位(或整個表格)不太有幫助或不相關,管理員可以在「資料模型」標籤中隱藏這些欄位。請注意,SQL 查詢不受此設定影響 - 具有資料庫 SQL 編輯器存取權的使用者始終可以存取該資料庫中的所有表格和欄位。

Selecting Do not include will hide fields in the GUI interfaces (though the field will still be acccesible in SQL/native queries.

將欄位的可見性設定為「不包含」將從使用查詢產生器建立的問題的選單和表格中排除該欄位。在資料模型層級變更欄位可見性的缺點是該動作是全域性的,因此不是很靈活。但是,如果您想選擇性地授予不同人群組對列或欄的存取權,則需要沙箱化資料。

資料沙箱化

資料沙箱化是我們的 Pro 和 Enterprise 方案中提供的一項功能,當與單一登入 (SSO) 結合使用時,可讓您根據使用者屬性限制對列或欄的存取權。您可以在 Metabase 中手動新增這些屬性,或透過您的身分驗證服務新增。您可以設定連結到使用者屬性的列級存取權,或者您可以透過建立排除特定欄位的表格的自訂視圖來限制對欄的存取權。請注意,沙箱化僅適用於 GUI 問題,這將我們帶到

SQL 編輯器存取權和沙箱互斥

關於權限,您需要知道的重要一點是,具有資料庫 SQL 存取權的群組可以存取資料庫中的所有資料。即使欄位在 GUI 選單或資料瀏覽器中不可見,具有 SQL 存取權的人員仍然能夠查詢資料庫中的表格(以及所有列和欄)。更具體地說,他們將能夠查詢您用來將 Metabase 連線到該資料庫的資料庫中使用者帳戶可用的任何資料。這將我們帶到

SQL 權限

Metabase 缺少表格層級的 SQL 權限:您可以授予群組對資料庫的 SQL 編輯器存取權,或者不授予。但是由於您可以在資料庫層級設定 SQL 編輯器權限,因此您可以建立與同一個資料庫的兩個(或更多)連線,每個連線都具有不同資料庫中不同使用者帳戶的不同連線字串。例如,您可以設定

  • 連線 1,具有對整個資料庫的存取權
  • 連線 2,僅具有對表格 A、B 和 C 的存取權

然後,您可以授予您的大部分群組對連線 2(權限較低的連線)的存取權,並授予選定的使用者(如專職資料分析師)對連線 1(整個資料庫)的存取權。Metabase 會將這些連線視為兩個不同的資料庫,即使它們只是對同一個資料庫的兩個不同存取層級。但是,從每個人的角度來看,他們只會看到一個資料庫(他們的群組有權存取的那個資料庫)。

應用程式權限

在 Pro 和 Enterprise 方案中,您可以將應用程式權限指派給群組,以便讓人員可以單點方式存取管理工具,而無需授予他們資料存取權。

3. 在您的 Metabase 中設定 SSO

雖然我們希望 Metabase 永遠在您心中佔有特殊地位,但我們知道它不是您使用的唯一軟體。如果您的組織開始成長,您很有可能正在使用單一登入 (SSO) 身分提供者,如 Okta、Auth0 或 OneLogin,讓人員可以驗證一次身分,即可存取您組織使用的所有應用程式。Metabase 與使用 SAML 和 JWT 標準的服務整合,這將讓您對資料存取權進行細緻的控制。

身分驗證選項

目前在 Metabase 中有四個基本的身分驗證選項。在開放原始碼版本中,您有

在 Pro 和 Enterprise 版本中,您還有

SAML 是一種開放協定,用於在使用 XML 的身分提供者和服務提供者之間交換資料。JWT 類似,但較不正式 - 它是一個權杖,而不是協定。Okta 和 Auth0 等身分提供者都使用這兩種標準來建立身分驗證服務(本質上是您組織中人員的全域密碼管理員)。例如,使用 Okta,您可以登入您的身分提供者一次,然後他們就可以使用他們有權存取的所有服務,而無需不斷重新輸入他們的登入名稱和密碼 - 或不同的登入名稱和密碼。身分提供者(在本例中為 Okta)將處理與每個服務提供者的交握。若要瞭解更多資訊,請查看 Auth0 的 SAML 概述。

使用 SAML 或 JWT 設定 SSO 的最大優勢是您可以將使用者屬性傳遞到 Metabase,這可讓您根據使用者是誰來沙箱化資料,從而限制對表格的列和/或欄的存取權。

4. 同步 SSO 和 Metabase 群組

現在您已建立群組、設定權限,並將您的 SSO 提供者連線到 Metabase,現在是同步群組的時候了。查看我們的文件,瞭解如何與您的身分提供者同步群組成員資格。請注意,您也可以使用 LDAP 同步群組(Metabase 的免費開放原始碼版本提供的選項)。

5. 告訴人員他們只需登入即可建立 Metabase 帳戶

此時,您應該已完成所有設定。人員應該能夠登入 Metabase 並看到他們需要看到的一切,僅此而已。

6. 使用使用情況分析集合來監控人員如何使用您的 Metabase

最後,在 Pro 和 Enterprise 方案中,您可以探索 Metabase 使用情況分析,以驗證人員正在查看的內容,並確認您的權限是否如您預期的那樣運作。您可以查看人員查看的儀表板和問題、他們執行的 SQL 查詢內容以及他們下載的資料。這也是一個很好的方式來查看您的推出進度,例如隨著時間的推移,有多少新使用者正在登入,以及每個人正在查看多少內容。

使用情況分析也可用於檢查您的主力儀表板和問題的效能。普及資料的問題之一是,所有技能範圍的人員都會提出問題,而這有時可能會導致一些效率較低的查詢。您可以使用使用情況分析來尋找執行速度緩慢的常用項目,然後查看我們的文章,以取得有關加快儀表板速度和撰寫 SQL 查詢的最佳實務的提示。

若要瞭解更多關於使用情況分析的資訊,請查看我們關於如何掌握您的資料的文章。

延伸閱讀

下一步:資料分享指南

在您的組織內部或外部,您有哪些選項可以分享您的資料或分析?您應該在何時使用一種方法而不是另一種方法?

下一篇文章