共用方式為


管理數據表安全性角色

適用於: ✅Microsoft網狀架構Azure 數據總管

主體會透過角色型訪問控制模型授與資源的存取權,而其指派的安全性角色會決定其資源存取權。

在本文中,您將瞭解如何使用管理命令來 檢視現有的安全性角色 ,以及在 數據表層級新增和移除安全性角色

注意

主體必須具有資料庫層級的存取權,才能獲指派數據表特定的安全性角色。

權限

您必須至少有 資料表管理員 許可權才能執行這些命令。

數據表層級安全性角色

下表顯示數據表層級上可能的安全性角色,並描述授與每個角色的許可權。

角色 權限
admins 檢視、修改及移除數據表和數據表實體。
ingestors 將數據擷取至數據表,而無法存取查詢。

注意

若要瞭解如何授與資料庫內數據表子集的主體檢視存取權,請參閱 管理數據表檢視存取

顯示現有的安全性角色

新增或移除主體之前,您可以使用 .show 命令來查看數據表,其中包含已在數據表上設定的所有主體和角色。

語法

若要顯示所有角色:

.showtable TableName principals

若要顯示您的角色:

.showtable TableName principal roles

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
TableName string ✔️ 要列出主體的數據表名稱。

範例

下列命令會列出具有數據表存取 StormEvents 權的所有安全性主體。

.show table StormEvents principals

範例輸出

角色 PrincipalType PrincipalDisplayName PrincipalObjectId PrincipalFQN
數據表 StormEvents 管理員 Microsoft Entra 使用者 艾比·阿特金斯 cd709aed-a26c-e3953dec735e aaduser=abbiatkins@fabrikam.com

新增和卸除安全性角色

本節提供新增和移除主體的語法、參數和範例。

語法

Action TableName 角色 ( 主體 [ , Principal...] ) [skip-results] [ Description ] table

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
動作 string ✔️ 指令 .add.drop.set
.add 會新增指定的主體、 .drop 移除指定的主體,並 .set 新增指定的主體,並移除所有先前的主體。
TableName string ✔️ 要加入主體的數據表名稱。
Role string ✔️ 要指派給主體的角色。 對於資料表,這可以是 adminsingestors
主體 string ✔️ 一或多個主體。 如需如何指定這些主體的指引,請參閱 參考安全性主體
skip-results string 如果提供,此命令將不會傳回已更新的數據表主體清單。
說明 string 描述使用 命令時所顯示變更的 .show 文字。

注意

.set具有 none 的 命令,而不是主體清單,將會移除指定角色的所有主體。

範例

在下列範例中,您將瞭解如何 新增安全性角色移除安全性角色,以及 在同一個命令中新增和移除安全性角色。

使用 .add 新增安全性角色

下列範例會將主體新增至 admins 數據表上 StormEvents 的角色。

.add table StormEvents admins ('aaduser=imikeoein@fabrikam.com')

下列範例會將應用程式新增至 ingestors 數據表上 StormEvents 的角色。

.add table StormEvents ingestors ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com')

使用 .drop 移除安全性角色

下列範例會從 admins 數據表上 StormEvents 的角色中移除群組中的所有主體。

.drop table StormEvents admins ('aadGroup=SomeGroupEmail@fabrikam.com')

新增安全性角色,並使用 .set 移除舊的

下列範例會移除現有的 ingestors ,並將提供的主體新增為 ingestors 資料表上的 StormEvents

.set table StormEvents ingestors ('aaduser=imikeoein@fabrikam.com', 'aaduser=abbiatkins@fabrikam.com')

使用 .set 移除所有安全性角色

下列命令會移除資料表上StormEvents所有現有的 ingestors

.set table StormEvents ingestors none