Поделиться через


Управление владением объектом Catalog в Unity

Каждый защищаемый объект в Unity имеет владельца. Владелец может быть любым субъектом: пользователем, субъектом-службой или группой учетных записей. Субъект, создающий объект, становится его первоначальным владельцем. Владелец объекта имеет все привилегии для объекта, например SELECT и MODIFY на table, а также разрешение на grant привилегий другим субъектам. Владелец объекта имеет возможность удалить объект.

Привилегии владельца

Владельцы объекта автоматически предоставляют все привилегии для этого объекта. Кроме того, владельцы объектов могут grant привилегии для самого объекта и всех его дочерних объектов. Это означает, что владельцы schema не имеют автоматически всех привилегий на tables в schema, но они могут grant себе привилегии на tables в schema.

Примечание.

Существует одно исключение из правила, по которому владельцы имеют все привилегии на объект: чтобы избежать случайной утечки данных, владельцы schema по умолчанию не имеют привилегии EXTERNAL USE SCHEMA. См. Включение доступа к внешним данным Unity Catalog.

Хранилище метаданных и владение catalog

Администраторы хранилища метаданных являются владельцами хранилища метаданных. Роль администратора хранилища метаданных является необязательной. Администраторы хранилища метаданных могут переназначить владение хранилищем метаданных, передав роль администратора хранилища метаданных, см. раздел "Назначение администратора хранилища метаданных".

Если ваше рабочее пространство было автоматически активировано для Unity Catalog, то рабочее пространство по умолчанию присоединено к хранилищу метаданных, и в хранилище создается рабочее пространство catalog для вашего пространства. Администраторы рабочей области являются владельцами по умолчанию и могут переназначить владение рабочей областью catalog. В этих рабочих областях администратор хранилища метаданных по умолчанию не назначается, но администраторы учетных записей могут grant роль администратора хранилища метаданных при необходимости. См. раздел администраторов хранилища метаданных.

Дополнительную информацию о привилегиях администратора в Unity Catalogсм. в разделе Привилегии администратора в Unity Catalog.

Владение против привилегии MANAGE

MANAGE (общедоступная предварительная версия) — это привилегия, аналогичная собственности на объект. Он предоставляет пользователю возможность изменять, удалять и управлять привилегиями объекта. Однако пользователям с правами MANAGE на объект не предоставляются автоматически все привилегии на этот объект. Как и для других привилегий, пользователям требуется USE CATALOG на родительском catalog объекта и USE SCHEMA на родительском schemaобъекта. Например, для получения grant разрешений на tableпользователи должны иметь привилегии MANAGE для этого table, привилегии USE CATALOG для его родительского catalog, а также привилегии USE SCHEMA для его родительского schema.

Владелец объекта может быть только одним субъектом, включая группу, в то время как MANAGE можно предоставить нескольким субъектам.

Чтобы избежать случайной эскалации привилегий, ALL PRIVILEGES не включает привилегию MANAGE

Просмотр владельца объекта

Вы можете использовать обозревателя или инструкции SQL для просмотра владельца объекта.

Необходимые разрешения: любой пользователь с BROWSE привилегиями объекта или родителя объекта может просмотреть владельца объекта.

Обозреватель Catalog

  1. В рабочей области Azure Databricks щелкните значок CatalogCatalog.

  2. Select объекту, такому как catalog, schema, table, представление, том, внешнее расположение или учетные данные хранилища.

    Переход к объекту зависит от объекта. Catalogs, схемы и содержимое схем (например, tables и volumes) можно выбрать в левой области Catalog. Другие объекты, такие как внешние расположения или Delta Sharing shares, можно найти, щелкнув значок шестеренки над областью Catalog и выбрав категорию объектов в меню.

    Для большинства объектов владелец отображается на вкладке "Обзор" на странице сведений об объекте. Для некоторых объектов, таких как внешние расположения, он отображается в верхней части страницы сведений об объекте.

SQL

Выполните следующую команду SQL в редакторе запросов записной книжки или SQL. Замените заполнитель values:

  • <securable-type>: тип защищаемого объекта, например CATALOG или TABLE.
  • <catalog>: родительский catalog, если вы просматриваете schema или содержимое schema.
  • <schema>: родительский schema, если вы просматриваете содержимое schema, например table или представление.
  • <securable-name>: имя защищаемого объекта.
DESCRIBE <securable-type> EXTENDED <catalog>.<schema>.<securable-name>;

Передача владения

Вы можете использовать Catalog Explorer или инструкции SQL для просмотра владельца объекта.

разрешения, необходимые. Вы можете передать владение объектами, если вы являетесь текущим владельцем, администратором хранилища метаданных, владельцем контейнера (catalog для schema, schema для table), или пользователем с правами MANAGE для объекта. Объекты общего ресурса delta Sharing являются исключением: субъекты с USE SHARESET SHARE PERMISSION привилегиями также могут передавать владение общей папкой.

Примечание.

Чтобы предотвратить эскалацию привилегий, только администратор хранилища метаданных может передать владение представлением, функцией или моделью любому пользователю, субъекту-службе или группе в учетной записи. Текущие владельцы и пользователи с привилегиями MANAGE могут передавать права владения только на своё имя пользователя или в группу, членами которой они являются.

Catalog Explorer

  1. В рабочей области Azure Databricks щелкните значок CatalogCatalog.

  2. Select объект, например catalog, schema, table, представление, внешнее расположение или учетные данные хранения.

    Переход к объекту зависит от объекта. Catalogs, схемы и содержимое схем (например, tables и volumes) можно выбрать в левой области Catalog. Другие объекты, такие как внешние расположения или Delta Sharing shares, можно найти, щелкнув значок шестерёнки над панелью Catalog и выбрав категорию объектов в меню.

    Для большинства объектов владелец отображается на вкладке "Обзор" на странице сведений об объекте. Для некоторых объектов, таких как внешние расположения, он отображается в верхней части страницы сведений об объекте.

  3. Щелкните значок редактирования рядом Значок с владельцем.

  4. Найдите и select группу, пользователя или субъекта-службы.

  5. Нажмите кнопку Сохранить.

SQL

Выполните следующую команду SQL в редакторе запросов записной книжки или SQL. Замените заполнитель values:

  • <securable-type>: тип защищаемого объекта, например, CATALOG или TABLE. METASTORE не поддерживается в качестве защищаемого объекта в этой команде.
  • <securable-name>: имя защищаемого объекта. Если вы изменяете schema или содержимое schema, необходимо использовать полное трехуровневое пространство имен (catalog.schema.object), если только вы еще не указали родительский catalog и/или schema.
  • <principal> — пользователь, субъект-служба (представленный значением applicationId) или группа. Необходимо заключить пользователей, субъектов-служб и имена групп, которые включают специальные символы в backticks (` `). См. раздел "Субъект".
ALTER <securable-type> <securable-name> OWNER TO <principal>;

Например, чтобы передать владение orderstable группе accounting:

ALTER TABLE mycatalog.myschema.orders OWNER TO `accounting`;