Unity Catalog 中的管理员权限
本文介绍 Azure Databricks 帐户管理员、工作区管理员和元存储管理员所具有的管理 Unity Catalog 的权限。
注意
如果已自动为 Unity Catalog 启用工作区,则在已预配工作区目录的情况下,工作区管理员对附加的元存储和工作区目录拥有默认权限。 请参阅《为 Unity Catalogu 自动启用工作区时的工作区管理员权限》。
元存储管理员
元存储管理员是 Unity Catalog 中的可选但高特权用户或组。 默认情况下,元存储管理员对元存储具有以下权限:
CREATE CATALOG
:允许用户在元存储中创建目录。CREATE CLEAN ROOM
:允许用户创建一个 干净的空间 ,以便与其他组织安全地协作处理项目,而无需共享基础数据。CREATE CONNECTION
:允许用户在湖屋联合方案中创建与外部数据库的连接。CREATE EXTERNAL LOCATION
:允许用户创建外部位置。CREATE SERVICE CREDENTIAL
:允许用户 创建服务凭据。CREATE STORAGE CREDENTIAL
:允许用户创建存储凭据。CREATE FOREIGN CATALOG
:允许用户在湖屋联合方案中使用与外部数据库的连接来创建外部目录。CREATE SHARE
:允许数据提供程序用户在 Delta Sharing 中创建共享。CREATE RECIPIENT
:允许数据提供程序用户在 Delta Sharing 中创建接收方。CREATE PROVIDER
:允许数据接收方用户在 Delta Sharing 中创建提供程序。CREATE MATERIALIZED VIEW
:允许用户创建具体化视图。MANAGE ALLOWLIST
:允许用户更新允许列表,以管理对 init 脚本和库的群集访问全新。
元存储管理员也是元存储的所有者,这授予他们以下特权:
管理特权或转让元存储中任何对象的所有权,包括存储凭据、外部位置、连接、共享、收件人和提供程序。
授予自己对元存储中任何数据的读写权限。
元存储管理员通过能够转移所有对象的所有权来间接实现此功能。 默认情况下没有直接访问权限。 授予权限会进行审核记录。
读取和更新元存储中所有对象的元数据。
删除元存储。
元存储管理员是唯一可以授予元存储本身的权限的用户。
由于元存储管理员是唯一拥有这些权限的用户,因此,如果要使用以下任一功能,则必须分配元存储管理员:
- 在某人离开公司后,更改目录的所有权。
- 管理和委托对 init 脚本和 jar 允许列表的权限。
- 向非工作区管理员委托创建目录的权限和其他顶级权限。
- 通过增量共享接收共享数据。
- 移除默认工作区管理员权限。
- 如果元存储没有托管存储,则为其添加。 请参阅将托管存储添加到现有元存储。
谁具有初始元存储管理员权限?
如果帐户管理员手动创建了元存储,该帐户管理员是元存储的初始所有者和元存储管理员。2023 年 11 月 9 日之前创建的所有元存储都是由帐户管理员手动创建的。
如果元存储已预配为自动 Unity Catalog 启用的一部分,则无需元存储管理员即可创建元存储。在这种情况下,工作区管理员会自动获得可将元存储管理员设为可选的权限。 如果需要,帐户管理员可以将元存储管理员角色分配给用户、服务主体或组。 强烈建议使用组。 请参阅《自动启用 Unity Catalog》。
分配元存储管理员
元存储管理员角色具有高度权限,分配时应谨慎操作。 它是可选的。
帐户管理员可以分配元存储管理员角色。 Databricks 建议任命组为元存储管理员。通过执行此操作,组的任何成员会自动成为元存储管理员。
要将元存储管理员角色分配给组,请执行以下操作:
- 作为帐户管理员,登录到帐户控制台。
- 单击 “目录”。
- 单击元存储的名称以打开其属性。
- 在“元存储管理员”下,单击“编辑”。
- 从下拉列表中选择一个组。 可以在字段中输入文本以搜索选项。
- 单击“保存”。
重要
元存储管理员分配变更可能需要多达 30 秒才能反映在你的帐户中,并且在某些工作区中生效所需的时间可能比其他工作区要长。 此延迟是由缓存协议造成的。
帐户管理员
帐户管理员是一个高特权角色,应该谨慎分配。 帐户管理员具有以下权限:
- 可以创建元存储,默认情况下会成为初始元存储管理员。
- 可以将元存储链接到工作区。
- 可以分配元存储管理员角色。
- 可以授予对元存储的特权。
- 可以为元存储启用 Delta Sharing。
- 可以配置存储凭据。
- 可以启用系统表并委托对这些表的访问权限。
若要建立第一个 Azure Databricks 帐户管理员,请参阅建立第一个帐户管理员。
工作区管理员
工作区管理员是一个高特权角色,应该谨慎分配。 工作区管理员具有以下权限:
- 可以将用户、服务主体和组添加到工作区。
- 可以委托其他工作区管理员。
- 可以管理作业所有权。 请参阅控制对作业的访问。
- 可以管理作业的“运行方式”设置。 请参阅为作业运行配置标识。
- 可以查看和管理笔记本、仪表板、查询和其他工作区对象。 请参阅访问控制列表。
帐户管理员可以使用 RestrictWorkspaceAdmins
设置限制工作区管理员权限。 请参阅限制工作区管理员。
自动为 Unity Catalog 启用工作区时的工作区管理员权限
如果已自动为 Unity Catalog 启用工作区,则默认情况下工作区会附加到元存储。 有关详细信息,请参阅《自动启用 Unity Catalog》。
如果已自动为 Unity Catalog 启用工作区,则默认情况下,工作区管理员在附加的元存储上具有以下权限:
CREATE CATALOG
CREATE CLEAN ROOM
CREATE EXTERNAL LOCATION
CREATE SERVICE CREDENTIAL
CREATE STORAGE CREDENTIAL
CREATE CONNECTION
CREATE SHARE
CREATE RECIPIENT
CREATE PROVIDER
CREATE MATERIALIZED VIEW
如果为工作区预配了工作区目录,则工作区管理员是工作区目录的默认所有者。 此目录的所有权授予以下权限:
管理工作区目录中任何对象的特权或转移其所有权。
这包括向自己授予对目录中所有数据的读写权限(默认情况下没有直接访问权限;授予权限会进行审核记录)。
转移工作区目录本身的所有权。
所有工作区用户会收到对工作区目录的 USE CATALOG
权限。 工作区用户还会收到对目录中的 default
架构的 USE SCHEMA
、CREATE TABLE
、CREATE VOLUME
、CREATE MODEL
、CREATE FUNCTION
和 CREATE MATERIALIZED VIEW
特权。
注意
附加元存储和工作区目录上授予的默认特权不会在工作区之间进行维护(例如,如果工作区目录也绑定到另一个工作区)。