你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

基于角色的访问控制

适用于:✅Microsoft Fabric✅Azure 数据资源管理器

Azure 数据资源管理器使用基于角色的访问控制 (RBAC) 模型,其中的主体根据为其分配的角色访问资源。 角色是为特定群集、数据库、表、外部表、具体化视图或函数定义的。 如果是为群集定义的,该角色将应用于群集中的所有数据库。 如果是为数据库定义的,该角色将应用于数据库中的所有实体。

Azure 资源管理器 (ARM) 角色(例如订阅所有者或群集所有者)会授予资源管理的访问权限。 对于数据管理,需要本文档中所述的角色。

注意

若要删除数据库,至少需要群集上的参与者 ARM 权限。 若要分配 ARM 权限,请参阅使用 Azure 门户分配 Azure 角色

Fabric 中的实时智能使用混合基于角色的访问控制 (RBAC) 模型,其中 主体 基于从两个源(Fabric 和 Kusto 管理命令)授予的分配角色访问资源。 用户将拥有从两个源授予的角色的并集。

在 Fabric 中,可以通过在工作区中分配角色或基于项权限模型共享特定来分配或继承角色。

构造角色

角色 授予对项的权限
工作区 管理员 工作区中所有项目的管理员 RBAC 角色。
工作区 成员 工作区中所有项目的管理员 RBAC 角色。
工作区 参与者 工作区中所有项目的管理员 RBAC 角色。
工作区 查看器 工作区中所有项的查看器 RBAC 角色。
编辑器 项目的管理员 RBAC 角色。
查看器 项上的查看器 RBAC 角色。

可以使用管理命令在特定数据库、表、外部表、具体化视图或函数的数据平面上进一步定义角色。 在这两种情况下,在较高级别应用的角色(工作区,Eventhouse)由较低级别(数据库,表)继承。

角色和权限

下表概述了在每个范围可用的角色和权限。

“权限”列显示授予每个角色的访问权限。

“依赖项”列列出了获取该行中的角色所需的最低角色。 例如,若要成为表管理员,你首先必须是“数据库用户”之类的角色,或者是拥有数据库用户权限的角色,例如数据库管理员或 AllDatabasesAdmin。 当“依赖项”列中列出了多个角色时,只需其中一个角色即可获取该角色。

获取 角色 的方式列提供了授予或继承角色的方法。

“管理”列提供添加或删除角色主体的方法。

作用域 角色 权限 依赖项 管理
群集 AllDatabasesAdmin 对群集中所有数据库的完全权限。 可以显示和更改某些群集级别策略。 包括所有权限。 Azure 门户
群集 AllDatabasesViewer 读取群集中任意数据库的所有数据和元数据。 Azure 门户
群集 AllDatabasesMonitor 在群集中任意数据库的上下文中执行 .show 命令。 Azure 门户
数据库 管理员 特定数据库范围内的完全权限。 包括所有较低级别的权限。 Azure 门户管理命令
数据库 用户 读取数据库的所有数据和元数据。 创建表和函数,并成为这些表和函数的管理员。 Azure 门户管理命令
数据库 查看者 读取所有数据和元数据,但打开了 RestrictedViewAccess 策略的表除外。 Azure 门户管理命令
数据库 Unrestrictedviewer 读取所有数据和元数据,包括打开了 RestrictedViewAccess 策略的表中的数据。 数据库用户或数据库查看者 Azure 门户管理命令
数据库 引入者 将数据引入到数据库的所有表中,但无权查询数据。 Azure 门户管理命令
数据库 监视 在数据库及其子实体的上下文中执行 .show 命令。 Azure 门户管理命令
管理员 特定表范围内的完全权限。 数据库用户 管理命令
引入者 将数据引入表中,但无权查询数据。 数据库用户或数据库引入者 管理命令
外部表 管理员 特定外部表范围内的完全权限。 数据库用户或数据库查看者 管理命令
具体化视图 管理员 拥有更改视图、删除视图以及向另一个主体授予管理员权限的完全权限。 数据库用户或表管理员 管理命令
函数 管理员 拥有更改函数、删除函数以及向另一个主体授予管理员权限的完全权限。 数据库用户或表管理员 管理命令
范围 角色 权限 如何获取角色
Eventhouse AllDatabasesAdmin 对 Eventhouse 中的所有数据库的完整权限。 可以显示和更改某些 Eventhouse 级策略。 包括所有权限。 - 继承为工作区 管理员、工作区 成员或工作区 参与者

无法使用管理命令分配。
数据库 管理员 特定数据库范围内的完全权限。 包括所有较低级别的权限。 - 继承为工作区 管理员、工作区 成员或工作区 参与者
- 与编辑权限共享 的项。
- 分配有 管理命令
数据库 用户 读取数据库的所有数据和元数据。 创建表和函数,并成为这些表和函数的管理员。 - 分配有 管理命令
数据库 查看者 读取所有数据和元数据,但打开了 RestrictedViewAccess 策略的表除外。 - 与查看权限共享 的项。
- 分配有 管理命令
数据库 Unrestrictedviewer 读取所有数据和元数据,包括打开了 RestrictedViewAccess 策略的表中的数据。 - 分配有 管理命令。 依赖于具有 数据库用户数据库查看器
数据库 引入者 将数据引入到数据库的所有表中,但无权查询数据。 - 分配有 管理命令
数据库 监视 在数据库及其子实体的上下文中执行 .show 命令。 - 分配有 管理命令
管理员 特定表范围内的完全权限。 - 继承为工作区 管理员、工作区 成员或工作区 参与者
- 与编辑权限共享的父项(KQL 数据库)。
- 分配有 管理命令。 依赖于对父数据库拥有 数据库用户
引入者 将数据引入表中,但无权查询数据。 - 分配有 管理命令。 依赖于对父数据库具有 数据库用户数据库引入器
外部表 管理员 特定外部表范围内的完全权限。 - 分配有 管理命令。 依赖于对父数据库拥有 数据库用户数据库查看器
具体化视图 管理员 拥有更改视图、删除视图以及向另一个主体授予管理员权限的完全权限。 - 继承为工作区 管理员、工作区 成员或工作区 参与者
- 与编辑权限共享的父项(KQL 数据库)。
- 分配有 管理命令。 依赖于对父项拥有 数据库用户表管理员
函数 管理员 拥有更改函数、删除函数以及向另一个主体授予管理员权限的完全权限。 - 继承为工作区 管理员、工作区 成员或工作区 参与者
- 与编辑权限共享的父项(KQL 数据库)。
- 分配有 管理命令。 依赖于对父项拥有 数据库用户表管理员