角色型存取控制
適用於: ✅Microsoft網狀架構✅Azure 數據總管
Azure 數據總管會使用角色型訪問控制 (RBAC) 模型 ,主體 會根據其指派的角色取得資源的存取權。 角色是針對特定叢集、資料庫、數據表、外部數據表、具體化檢視或函式所定義。 為叢集定義時,角色會套用至叢集中的所有資料庫。 為資料庫定義時,角色會套用至資料庫中的所有實體。
Azure Resource Manager (ARM) 角色,例如訂用帳戶擁有者或叢集擁有者,會授與資源管理的訪問許可權。 針對數據管理,您需要本檔中所述的角色。
注意
若要刪除資料庫,您至少 需要叢集的參與者 ARM 許可權。 若要指派 ARM 許可權,請參閱使用 Azure 入口網站 指派 Azure 角色。
Fabric 中的即時智慧會使用混合式角色型訪問控制 (RBAC) 模型 ,其中主體 會根據從兩個來源之一或兩個來源中授與的指派角色,取得資源的存取權:Fabric 和 Kusto 管理命令。 用戶將擁有從這兩個來源授與的角色聯集。
在 Fabric 中,可以指派或繼承角色,方法是在工作區中指派角色,或根據項目許可權模型共用特定專案。
網狀架構角色
角色 | 授與項目的許可權 |
---|---|
工作區 管理員 | 工作區中所有專案的管理員 RBAC 角色。 |
工作區 成員 | 工作區中所有專案的管理員 RBAC 角色。 |
工作區 參與者 | 工作區中所有專案的管理員 RBAC 角色。 |
工作區 查看器 | 工作區中所有專案的查看器 RBAC 角色。 |
項目 編輯器 | 專案上的系統管理員 RBAC 角色。 |
專案 查看器 | 專案上的查看器 RBAC 角色。 |
您可以使用管理命令, 進一步在數據平面上定義特定資料庫、數據表、外部數據表、具體化檢視或函式的角色。 在這兩種情況下,在較高層級套用的角色(工作區、Eventhouse)會由較低層級繼承(資料庫、數據表)。
角色和權限
下表概述每個範圍中可用的角色和許可權。
[ 許可權] 資料行會顯示授與每個角色的存取權。
[相依性] 數據行會列出取得該數據列中角色所需的最低角色。 例如,若要成為數據表管理員,您必須先擁有資料庫使用者之類的角色,或是包含資料庫用戶許可權的角色,例如資料庫管理員或 AllDatabasesAdmin。 當 [相依性] 數據行中列出多個角色時,只需要其中一個角色才能取得角色。
如何 取得 角色數據行提供可授與或繼承角色的方式。
[管理] 數據行提供新增或移除角色主體的方式。
範圍 | 角色 | 權限 | 相依性 | 管理 |
---|---|---|---|---|
Cluster | AllDatabasesAdmin | 叢集中所有資料庫的完整許可權。 可能會顯示和變更特定叢集層級原則。 包含所有許可權。 | Azure 入口網站 | |
Cluster | AllDatabasesViewer | 讀取叢集中任何資料庫的所有數據和元數據。 | Azure 入口網站 | |
Cluster | AllDatabasesMonitor | 在叢集中任何資料庫的內容中執行 .show 命令。 |
Azure 入口網站 | |
Database | 管理 | 特定資料庫範圍內的完整許可權。 包含所有較低層級的許可權。 | Azure 入口網站 或管理命令 | |
Database | User | 讀取資料庫的所有數據和元數據。 建立數據表和函式,並成為這些數據表和函式的管理員。 | Azure 入口網站 或管理命令 | |
Database | 檢視者 | 讀取所有數據和元數據,但已開啟 RestrictedViewAccess 原則的數據表除外。 | Azure 入口網站 或管理命令 | |
Database | Unrestrictedviewer | 讀取所有數據和元數據,包括已開啟 RestrictedViewAccess 原則的數據表。 | 資料庫使用者或資料庫查看器 | Azure 入口網站 或管理命令 |
Database | 擷取器 | 將數據內嵌至資料庫中的所有數據表,而無法存取查詢數據。 | Azure 入口網站 或管理命令 | |
Database | 監視器 | 在資料庫及其子實體的內容中執行 .show 命令。 |
Azure 入口網站 或管理命令 | |
Table | 管理 | 特定數據表範圍內的完整許可權。 | 資料庫使用者 | 管理命令 |
Table | 擷取器 | 將數據擷取至數據表,而無法存取查詢數據。 | 資料庫用戶或資料庫擷取器 | 管理命令 |
外部資料表 | 管理 | 特定外部數據表範圍內的完整許可權。 | 資料庫使用者或資料庫查看器 | 管理命令 |
具體化檢視 | 管理 | 變更檢視、刪除檢視,以及將系統管理員許可權授與其他主體的完整許可權。 | 資料庫用戶或數據表管理員 | 管理命令 |
函式 | 管理 | 變更函式、刪除函式,以及將系統管理員許可權授與其他主體的完整許可權。 | 資料庫用戶或數據表管理員 | 管理命令 |
範圍 | 角色 | 權限 | 如何取得角色 |
---|---|---|---|
Eventhouse | AllDatabasesAdmin | Eventhouse 中所有資料庫的完整許可權。 可能會顯示並改變特定 Eventhouse 層級的原則。 包含所有許可權。 | - 繼承為工作區 管理員、工作區 成員或工作區 參與者。 無法使用管理命令指派。 |
Database | 管理 | 特定資料庫範圍內的完整許可權。 包含所有較低層級的許可權。 | - 繼承為工作區 管理員、工作區 成員或工作區 參與者 - 與 編輯許可權共用的專案。 - 使用 管理命令指派 |
Database | User | 讀取資料庫的所有數據和元數據。 建立數據表和函式,並成為這些數據表和函式的管理員。 | - 使用 管理命令指派 |
Database | 檢視者 | 讀取所有數據和元數據,但已開啟 RestrictedViewAccess 原則的數據表除外。 | - 與檢視許可權共用 的專案。 - 使用 管理命令指派 |
Database | Unrestrictedviewer | 讀取所有數據和元數據,包括已開啟 RestrictedViewAccess 原則的數據表。 | - 使用 管理命令指派。 相依於具有 資料庫用戶 或 資料庫查看器。 |
Database | 擷取器 | 將數據內嵌至資料庫中的所有數據表,而無法存取查詢數據。 | - 使用 管理命令指派 |
Database | 監視器 | 在資料庫及其子實體的內容中執行 .show 命令。 |
- 使用 管理命令指派 |
Table | 管理 | 特定數據表範圍內的完整許可權。 | - 繼承為工作區 管理員、工作區 成員或工作區 參與者 - 與編輯許可權共用的父專案 (KQL Database)。 - 使用 管理命令指派。 相依於在父資料庫上擁有 資料庫使用者 。 |
Table | 擷取器 | 將數據擷取至數據表,而無法存取查詢數據。 | - 使用 管理命令指派。 相依於在父資料庫上擁有 資料庫用戶 或 資料庫擷取 。 |
外部資料表 | 管理 | 特定外部數據表範圍內的完整許可權。 | - 使用 管理命令指派。 相依於在父資料庫上擁有 資料庫用戶 或 資料庫查看器 。 |
具體化檢視 | 管理 | 變更檢視、刪除檢視,以及將系統管理員許可權授與其他主體的完整許可權。 | - 繼承為工作區 管理員、工作區 成員或工作區 參與者 - 與編輯許可權共用的父專案 (KQL Database)。 - 使用 管理命令指派。 相依於在父項目上擁有 資料庫用戶 或 數據表管理員 。 |
函式 | 管理 | 變更函式、刪除函式,以及將系統管理員許可權授與其他主體的完整許可權。 | - 繼承為工作區 管理員、工作區 成員或工作區 參與者 - 與編輯許可權共用的父專案 (KQL Database)。 - 使用 管理命令指派。 相依於在父項目上擁有 資料庫用戶 或 數據表管理員 。 |