資料沙箱:個人化使用者在 Metabase 中可看到的資料

將沙箱與使用者屬性配對,以自訂幾乎任何情況的資料。

在多租戶環境中管理權限

如果您為了多租戶自助分析嵌入 Metabase,您可以使用沙箱來確保租戶 A 無法看到租戶 B 的資料,反之亦然。

即使您只有一位客戶,沙箱在管理複雜組織結構的權限方面仍然非常出色。例如,如果您的客戶是一所大學,則該大學可能會要求不同群組具有不同的權限

  • 管理員應該能夠查看所有學生的資料。
  • 學生應該只能看到自己的資料,而不能看到其他學生的資料。
  • 教授應該看到多位學生(他們教導的學生)的資料,但不能看到所有學生的資料。

在這種情況下,您將為您的管理員、學生和教授建立個別的群組,然後將這些群組指派給資料沙箱。然後,您將設定每個沙箱,以自動向每個群組顯示不同的列或欄集。

您的沙箱設定會有些許不同,具體取決於您的租戶資料是否混合在一個結構描述中 — 您可以使用我們的多租戶權限文章來比較這些選項。

如果您已準備好自行試用沙箱,請嘗試資料沙箱範例,或查看資料沙箱文件

限制儀表板訂閱中的電子郵件收件者清單

我們社群的某些成員使用沙箱來鎖定 Metabase 中的電子郵件地址。在建立儀表板訂閱時,沙箱群組中的人員只會在收件者清單中看到自己的電子郵件地址。

假設您有一個教授群組,需要將儀表板訂閱電子郵件傳送給他們各自的學生。如果您將學生群組放入沙箱,您將自動阻止學生執行下列操作

  • 將訂閱電子郵件傳送給他們的教授
  • 查看其他學生的電子郵件地址。

如果您只想限制電子郵件清單,而不需要隱藏群組的任何列或欄,請使用自訂沙箱,並將自訂沙箱的 SQL 問題設定為 SELECT * FROM table

選擇性地授予敏感資料的存取權

如果您處理敏感資訊,例如財務或醫療資料,您可以使用沙箱來

  • 讓特定團隊在需要知道的情況下查看敏感資料。
  • 向其他所有人隱藏該敏感資料。

例如,假設您在遠距醫療領域工作,並且您有一個病患聊天表格,其中記錄護理師與遠距醫療病患之間在如下結構描述中的互動

護理師 ID 開始時間 結束時間 文字記錄

為了確保護理師可以查看自己聊天的完整記錄(包括文字記錄欄),但不能查看其他護理師的聊天記錄

  • 建立一個具有「護理師 ID」使用者屬性的 Nurse 群組,並將您的護理師新增至該群組。
  • Nurse 群組和病患聊天表格設定基本沙箱,以便護理師只能看到與其護理師 ID 相符的列。

然後,若要限制聊天表格的欄,以便公司中的其他所有人都可以看到聊天的護理師 ID開始時間結束時間,但看不到敏感的文字記錄

  • 建立一個 Non-Nurse 群組,並將非護理師員工新增至該群組。
  • Non-Nurse 群組和病患聊天表格設定自訂沙箱,以隱藏敏感的文字記錄欄。

向不同群組顯示自訂資料格式

沙箱一個較不為人知的用途是,您可以使用它們為不同群組格式化資料。

例如,您可以顯示表格中以

  • 英鎊 ( £ ) 表示的貨幣,適用於 United Kingdom 群組中的人員。
  • 日圓 ( ¥ ) 表示的貨幣,適用於 Japan 群組中的人員。

或者,您可能想要以

  • 24 小時格式顯示日期時間欄,適用於 Military 群組中的人員。
  • 12 小時格式顯示日期時間欄,適用於 Non-Military 群組中的人員。

您可以在 SQL 問題中執行自訂格式設定,然後在自訂沙箱中顯示該 SQL 問題。

沙箱可讓您向不同群組的人員顯示自訂 URL 和超連結文字。當與自訂登陸頁面配對時,自訂 URL 特別有用。

例如,如果您已為您的 Data EngineersProduct Managers 群組建立個別的資料入門指南,您可以向每個群組顯示具有不同目的地的不同超連結,例如

在我們的 Markdown 教學課程中瞭解更多資訊:使用沙箱屬性建立自訂 URL

請記住,如果您只需要沙箱來格式化資料,而不需要限制任何內容,請使用自訂沙箱,並將沙箱的 SQL 問題設定為 SELECT * FROM table

延伸閱讀

下一步:使用身分模擬,透過 GUI 和 SQL 查詢取得資料列層級權限

在您的資料庫中建立角色,並讓 Metabase 在查詢您的資料庫時模擬這些角色。

下一篇文章