控制對 Datamart 的存取

本文說明 Datamart 的訪問控制,包括數據列層級安全性、Power BI Desktop 中的規則,以及 DataMarts 可能無法存取或無法使用的方式。

工作區角色

將使用者指派給各種工作區角色,提供下列 Datamarts 功能:

工作區角色 描述
系統管理員 授與使用者透過數據流擷取數據的許可權、寫入SQL和視覺查詢,以及更新模型或語意模型(建立關聯性、建立量值等)
成員 授與使用者透過數據流擷取數據的許可權、寫入SQL和視覺查詢,以及更新模型或語意模型(建立關聯性、建立量值等)
參與者 授與使用者透過數據流擷取數據的許可權、寫入SQL和視覺查詢,以及更新模型或語意模型(建立關聯性、建立量值等)
檢視人員 授與使用者寫入 SQL 和視覺查詢的許可權,並在只讀模式中存取「模型檢視」。 如需詳細資訊,請參閱 查看器限制

查看器限制

相較於其他工作區角色,檢視者角色是比較有限的角色。 除了提供給檢視者的 SQL 許可權較少外,還有更多動作會受到限制而無法執行。

功能 限制
設定 檢視者具有只讀存取權,因此無法重新命名 Datamart、新增描述或變更敏感度標籤。
模型檢視 檢視者在模型檢視上具有唯讀模式。
執行查詢 除非特別授與,否則檢視者沒有完整的 DML/DDL 功能。 檢視者可以在 SQL 查詢編輯器中使用 SELECT 語句來讀取數據,並在 Visual 查詢編輯器的工具列中使用所有工具。 檢視者也可以從 Power BI Desktop 和其他 SQL 用戶端工具讀取數據。
在 Excel 中進行分析 檢視者沒有 [在 Excel 中進行分析] 的許可權。
手動更新語意模型 檢視者無法手動更新 Datamart 所連接的預設語意模型。
新增量值 檢視者沒有建立量值的許可權。
譜系檢視 檢視者無法讀取譜系檢視表。
共用/管理許可權 檢視者無權與其他人共享數據超市。
建立報表 檢視者無法存取工作區內建立內容,因此無法在 Datamart 之上建置報表。

資料列層級安全性

數據列層級安全性 (RLS) 可用來將指定使用者的數據存取限制為 datamart。 篩選會限制數據列層級的數據存取,而且您可以在角色內定義篩選。 在 Power BI 服務 中,工作區的成員可以存取工作區中的數據超市,而 RLS 不會限制這類數據存取。

您可以在 Datamart 編輯器中設定 Datamarts 的 RLS。 Datamarts 上設定的 RLS 會自動套用至下游專案,包括自動產生的語意模型和報表。

注意

Datamarts 使用增強的數據列層級安全性編輯器,這表示無法定義 Power BI 中支援的所有數據列層級安全性篩選。 限制包括目前只能使用 DAX 定義的運算式,包括動態規則,例如 USERNAME() 或 USERPRINCIPALNAME()。 若要使用這些篩選條件來定義角色,請使用 DAX 編輯器。

定義 Datamart 的數據列層級安全性 (RLS) 角色和規則

若要定義 RLS 角色,請執行下列步驟:

  1. 開啟您的數據超市,然後從功能區選取 [ 管理角色 ]。 Screenshot of the manage roles ribbon button.

  2. 使用 [ 數據列安全性設定 ] 視窗建立新的 RLS 角色。 您可以在數據表上定義篩選的組合,然後選取 [儲存 ] 以儲存角色。 Screenshot of the row security settings window.

  3. 儲存角色之後,請選取 [ 指派 ] 將使用者新增至角色。 指派之後,選取 [ 儲存 ] 以儲存角色指派,並關閉 RLS 設定模式。 Screenshot of the row security settings selections.

若要驗證建立的角色,請執行下列步驟:

  1. 從功能區選取 [ 檢視為] 按鈕。 Screenshot of the view as ribbon button.

  2. 選取角色的複選框,然後選取 [ 確定] 來選取要驗證的角色。 Screenshot of the manage view as role window.

  3. 數據檢視會顯示所選角色具有的存取權。 Screenshot of the view as results.

若要還原至您的存取權,請再次選取功能區上的 [ 檢視身分] 按鈕,然後選取 [ ]。

Screenshot of the view as role window with none selected.

Datamart 如何變成無法使用

當發生下列其中一種情況時,Datamart 可以標示為無法使用的數據超市。

情況 1:當 進階版 工作區從 進階版 變更為非進階時,該工作區中的所有數據超市都會變成無法使用。 Datamart 編輯器變得無法使用,且數據超市和自動產生的語意模型的下游使用量會遭到封鎖。 用戶或系統管理員必須將工作區升級為其原始 進階版 容量,才能還原 Datamarts。

情況 2: 當數據流更新 Datamart 和相關聯的語意模型時,但由於系統鎖定數據超市或語意模型更新擱置中,Datamart 會變成無法使用。 當 Datamart 進入無法使用狀態時,無法存取 Datamart 編輯器。 下圖所示的 [再試一次 ] 動作可讓使用者觸發數據流、數據超市和語意模型之間的同步處理。 可能需要幾分鐘的時間才能完成要求的動作,但可以繼續下游耗用量。

Screenshot of the request access setting.

情況 3:當 進階版 工作區移轉至不同區域中的另一個 進階版 容量時,Datamart 將會變得無法使用,並出現錯誤:「無法開啟 Datamart,因為工作區區域已變更。 若要開啟 Datamart,請將工作區重新連線到建立 Datamart 時所連線的區域。此行為是設計方式,因為建立 datamarts 的區域必須是工作區所在的區域,且不支援移轉。

本文提供控制數據超市存取的相關信息。

下列文章提供 datamarts 和 Power BI 的詳細資訊:

如需數據流和轉換資料的詳細資訊,請參閱下列文章: