資料沙箱:個人化使用者在 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 Engineers 和 Product Managers 群組建立個別的資料入門指南,您可以向每個群組顯示具有不同目的地的不同超連結,例如
- 前往
https://your-company-wiki.com/data-engineers
的資料工程師指南。 - 前往
https://your-company-wiki.com/product-managers
的產品經理指南。
在我們的 Markdown 教學課程中瞭解更多資訊:使用沙箱屬性建立自訂 URL。
請記住,如果您只需要沙箱來格式化資料,而不需要限制任何內容,請使用自訂沙箱,並將沙箱的 SQL 問題設定為 SELECT * FROM table
。
延伸閱讀
下一步:使用身分模擬,透過 GUI 和 SQL 查詢取得資料列層級權限
在您的資料庫中建立角色,並讓 Metabase 在查詢您的資料庫時模擬這些角色。