在Unity目录中管理权限

这篇文章解释了如何控制访问Unity Catalog中的数据和其他对象。

可以使用设置访问控制数据浏览, SQL语句在笔记本或Databricks SQL查询,使用Unity Catalog REST API,或使用起程拓殖

最初,用户无法访问metastore中的数据。访问权限可以由metastore管理员(对象的所有者)或包含该对象的编目或模式的所有者授予。

分配一个metastore管理员

metastore admin是Unity Catalog中的高度特权用户或组。Metastore管理员具有以下权限:

  • 创建目录、外部位置、共享和收件人。

  • 管理metastore内任何对象的特权或转移所有权,包括存储凭证、外部位置、共享、收件人和提供者。

  • 读取并更新metastore中所有对象的元数据。

  • 删除亚metastore。

  • 授予自己对metastore中所有数据的读写访问权限(默认情况下没有直接访问权限;授予权限是审计记录的)。

创建metastore的帐户admin是它的初始所有者和metastore admin。Databricks建议帐户admin通过指定一个组作为metastore admin来委托这一责任。通过这样做,组中的任何成员都自动成为metastore管理员。

使用实例将metastore管理员角色转移到组。

  1. 登录账户控制台

  2. 点击数据图标数据

  3. 点击一个metastore的名称打开它的属性。

  4. Metastore管理,点击编辑

  5. 在下拉菜单中选择分组。您可以在字段中输入文本以搜索选项。

  6. 点击保存

看到Unity目录中的管理员权限

对象所有权

Unity Catalog中的所有可安全对象都有一个所有者。对象所有者拥有对象的所有特权。看到管理Unity Catalog对象的所有权

Unity目录权限

访问权限可以由metastore管理员(对象的所有者)或包含该对象的编目或模式的所有者授予。看到Unity Catalog特权和安全对象

特权的继承

Unity Catalog中的安全对象是分层的,权限向下继承。这意味着在目录上授予特权将自动将特权授予目录中的所有当前和未来对象。类似地,在模式上授予的特权将由该模式中的所有当前和未来对象继承。看到继承模型

请注意

如果您在公开预览期间(2022年8月25日之前)创建了Unity Catalog亚存储,您可以通过特权继承升级到特权模型1.0版本。看到升级到特权继承

基本对象特权

Unity Catalog支持SQL关键字显示格兰特,撤销用于管理目录、模式、表、视图和函数上的特权。

对象的所有者或metastore管理员可以列出该对象上的所有授权。如果对象包含在编目或模式(例如,表或视图)中,编目或模式的所有者还可以列出该对象上的所有授权。

关于这种语法的例子,请参阅SQL参考文档:

Data Explorer提供了一个UI来完成这些操作;看到在数据资源管理器中管理Unity目录权限

所有权转移

要转移metastore内对象的所有权,可以使用SQL或Data Explorer。看到管理Unity Catalog对象的所有权在数据资源管理器中管理统一目录对象的所有权

管理外部位置和存储凭证

你可以配置外部位置而且存储凭证Unity目录使用数据资源管理器。有关更多信息,请参见管理外部位置和存储凭证

动态视图

动态视图允许您通过过滤或屏蔽它们的值来管理哪些用户可以访问视图的行、列,甚至特定的记录。看到创建动态视图