Защищаемые объекты и привилегии Unity Catalog

В этой статье описываются защищаемые объекты каталога Unity и привилегии, которые применяются к ним. Сведения о предоставлении привилегий в каталоге Unity см. в разделе "Показать", "Предоставить" и "Отозвать привилегии".

Примечание.

Эта статья относится к привилегиям каталога Unity и модели наследования в модели привилегий версии 1.0. Если вы создали хранилище метаданных каталога Unity во время общедоступной предварительной версии (до 25 августа 2022 г.), возможно, вы используете более раннюю модель привилегий, которая не поддерживает текущую модель наследования. Вы можете обновить модель привилегий до версии 1.0, чтобы получить наследование привилегий. См. раздел "Обновление до наследования привилегий".

Защищаемые объекты в каталоге Unity

Защищаемый объект — это объект, определенный в хранилище метаданных каталога Unity, в котором могут быть предоставлены привилегии субъекту (пользователю, субъекту-службе или группе). Защищаемые объекты в каталоге Unity являются иерархическими.

Иерархия объектов каталога Unity

Защищаемые объекты:

  • METASTORE: контейнер верхнего уровня для метаданных. Каждое хранилище метаданных каталога Unity предоставляет трехуровневое пространство имен (catalog.schema),tableкоторое упорядочивает данные.

    При управлении привилегиями в хранилище метаданных не включайте имя хранилища метаданных в команду SQL. Каталог Unity предоставляет или отменяет привилегии в хранилище метаданных, подключенном к рабочей области. Например, следующая команда предоставляет группе с именем инженерию возможность создания каталога в хранилище метаданных, подключенного к рабочей области:

    GRANT CREATE CATALOG ON METASTORE TO engineering
    
  • CATALOG: первый слой иерархии объектов, используемый для упорядочивания ресурсов данных. Внешний каталог — это специальный тип каталога, который зеркало базу данных во внешней системе данных в сценарии Федерации Lakehouse.

  • SCHEMA: также известные как базы данных, схемы являются вторым слоем иерархии объектов и содержат таблицы и представления.

  • TABLE: самый низкий уровень в иерархии объектов, таблицы могут быть внешними (хранящимися во внешних расположениях в облачном хранилище) или управляемыми таблицами (хранящимися в контейнере хранилища в облачном хранилище, которое вы создаете специально для Azure Databricks).

  • VIEW: объект только для чтения, созданный из запроса на одну или несколько таблиц, содержащихся в схеме.

  • MATERIALIZED VIEW: объект, созданный из запроса на одну или несколько таблиц, содержащихся в схеме. Его результаты отражают состояние данных при последнем обновлении.

  • ТОМ. Самый низкий уровень в иерархии объектов, тома могут быть внешними (хранящимися во внешних расположениях в облачном хранилище) или управляемыми (хранящимися в контейнере хранилища в облачном хранилище, которое вы создаете специально для Azure Databricks).

  • ЗАРЕГИСТРИРОВАННАЯ МОДЕЛЬ: зарегистрированная модель MLflow, содержащаяся в схеме.

  • FUNCTION: определяемая пользователем функция, содержащаяся в схеме. См . определяемые пользователем функции в каталоге Unity.

  • EXTERNAL LOCATION: объект, содержащий ссылку на учетные данные хранилища и путь к облачному хранилищу, содержащийся в хранилище метаданных каталога Unity.

  • УЧЕТНЫЕ ДАННЫЕ ХРАНИЛИЩА. Объект, который инкапсулирует долгосрочные облачные учетные данные, предоставляющие доступ к облачному хранилищу хранилища, содержащегося в хранилище метаданных каталога Unity.

  • CONNECTION: объект, указывающий путь и учетные данные для доступа к внешней системе базы данных в сценарии федерации Lakehouse.

  • SHARE: логическая группировка для таблиц, которые вы планируете предоставить общий доступ с помощью разностного общего доступа. Общая папка содержится в хранилище метаданных каталога Unity.

  • ПОЛУЧАТЕЛЬ: объект, определяющий организацию или группу пользователей, с которыми могут предоставляться доступ к данным с помощью Delta Sharing. Эти объекты содержатся в хранилище метаданных каталога Unity.

  • ПОСТАВЩИК: объект, представляющий организацию, которая предоставила доступ к данным для совместного использования с помощью разностного общего доступа. Эти объекты содержатся в хранилище метаданных каталога Unity.

Типы привилегий по защищаемому объекту в каталоге Unity

В следующей таблице перечислены типы привилегий, которые применяются к каждому защищаемому объекту в каталоге Unity. Сведения о предоставлении привилегий в каталоге Unity см. в разделе "Показать", "Предоставить" и "Отозвать привилегии".

Защищаемый объект Привилегии
Хранилище мета-данных CREATE CATALOG, CREATE CONNECTION, CREATE EXTERNAL LOCATIONCREATE PROVIDERCREATE RECIPIENTCREATE SHARECREATE STORAGE CREDENTIALSET SHARE PERMISSIONUSE MARKETPLACE ASSETSUSE PROVIDERUSE RECIPIENTUSE SHARE
Каталог ALL PRIVILEGES, , APPLY TAGBROWSE, CREATE SCHEMAUSE CATALOG

Все пользователи имеют USE CATALOG каталог main по умолчанию.

Следующие типы привилегий применяются к защищаемым объектам в каталоге. Эти привилегии можно предоставить на уровне каталога, чтобы применить их к соответствующим текущим и будущим объектам в каталоге.

CREATE FUNCTION, CREATE TABLE, CREATE MODELCREATE VOLUMECREATE FOREIGN CATALOGREAD VOLUMEREFRESHWRITE VOLUMEEXECUTEMODIFYSELECTUSE SCHEMA
Схема ALL PRIVILEGES, APPLY TAG, CREATE FUNCTIONCREATE TABLECREATE MODELCREATE VOLUMECREATE MATERIALIZED VIEWUSE SCHEMA

Следующие типы привилегий применяются к защищаемым объектам в схеме. Эти привилегии можно предоставить на уровне схемы, чтобы применить их к соответствующим текущим и будущим объектам в схеме.

EXECUTE, , MODIFYREAD VOLUMESELECTREFRESH,WRITE VOLUME
Таблица ALL PRIVILEGES, , APPLY TAGMODIFYSELECT
Материализованное представление ALL PRIVILEGES, , APPLY TAGREFRESHSELECT
Представления ALL PRIVILEGES, , APPLY TAGSELECT
Громкость ALL PRIVILEGES, , READ VOLUMEWRITE VOLUME
Внешнее расположение ALL PRIVILEGES, BROWSE, CREATE EXTERNAL TABLECREATE EXTERNAL VOLUMEREAD FILESWRITE FILESCREATE MANAGED STORAGE
Учетные данные хранилища ALL PRIVILEGES, , CREATE EXTERNAL LOCATIONCREATE EXTERNAL TABLE, READ FILESWRITE FILES
Connection ALL PRIVILEGES, , CREATE FOREIGN CATALOGUSE CONNECTION
Функция ALL PRIVILEGES, EXECUTE
Зарегистрированная модель ALL PRIVILEGES, , APPLY TAGEXECUTE
Поделиться SELECT (может быть предоставлено RECIPIENT)
Recipient Нет
Поставщик нет

Общие типы привилегий каталога Unity

В этом разделе содержатся сведения о типах привилегий, которые обычно применяются к каталогу Unity. Сведения о предоставлении привилегий в каталоге Unity см. в разделе "Показать", "Предоставить" и "Отозвать привилегии".

ALL PRIVILEGES

Применимые типы объектов: CATALOG, EXTERNAL LOCATION, STORAGE CREDENTIAL, TABLEMATERIALIZED VIEWSCHEMAFUNCTIONREGISTERED MODELVIEW,VOLUME

Используется для предоставления или отзыва всех разрешений, применимых к защищаемому объекту и его дочерним объектам, не указывая их явным образом.

Когда ALL PRIVILEGES он предоставляется объекту, он не предоставляет пользователю все применимые привилегии во время предоставления. Вместо этого он расширяется до всех доступных привилегий во время создания разрешений проверка.

При ALL PRIVILEGES отмене привилегии отменяются, а все явные привилегии, ALL PRIVILEGES предоставленные пользователю в объекте, также отзываются.

Примечание.

Эта привилегия эффективна при применении на более высоких уровнях в иерархии. Например, GRANT ALL PRIVILEGES ON CATALOG main TO analysts даст группе аналитиков все привилегии для каждого объекта (схемы, таблицы, представления, функции) в каталоге.

ПРИМЕНЕНИЕ ТЕГА

Применимые типы объектов: CATALOG, SCHEMA, REGISTERED MODEL, TABLEMATERIALIZED VIEWVIEW

Позволяет пользователю добавлять и изменять теги в объекте. Предоставление APPLY TAG таблице или представлению также включает теги столбцов.

Пользователь также должен иметь привилегии USE CATALOG в родительском каталоге и USE SCHEMA родительской схеме.

ОБЗОР

Применимые типы объектов: CATALOG, EXTERNAL LOCATION

Внимание

Эта функция предоставляется в режиме общедоступной предварительной версии.

Позволяет пользователю просматривать метаданные объекта с помощью Обозреватель каталога, браузера схемы, результатов поиска, графа information_schemaпроисхождения и REST API.

Пользователю не требуется привилегия USE CATALOG в родительском каталоге или USE SCHEMA родительской схеме.

CREATE CATALOG

Применимые типы объектов: хранилище метаданных Unity Catalog

Разрешает пользователю создавать каталог в хранилище метаданных Unity Catalog. Чтобы создать внешний каталог, необходимо также иметь привилегию CREATE FOREIGN CATALOG для подключения, содержащего внешний каталог или хранилище метаданных.

СОЗДАНИЕ ПОДКЛЮЧЕНИЯ

Применимые типы объектов: хранилище метаданных Unity Catalog

Позволяет пользователю создать подключение к внешней базе данных в сценарии федерации Lakehouse.

CREATE EXTERNAL LOCATION

Применимые типы объектов: хранилище метаданных Unity Catalog, STORAGE CREDENTIAL

Чтобы создать внешнее расположение, пользователь должен иметь эту привилегию как в хранилище метаданных, так и на учетные данные хранения, на которые ссылаются внешние расположения.

CREATE EXTERNAL TABLE

Применимые типы объектов: EXTERNAL LOCATION, STORAGE CREDENTIAL

Разрешает пользователю создавать внешние таблицы непосредственно в облачном клиенте с использованием внешнего расположения или учетных данных хранилища. Databricks рекомендует предоставлять это разрешение для внешнего расположения, а не учетные данные хранения (поскольку оно предоставляется только для определенного пути, это позволяет лучше контролировать, где пользователи могут создавать внешние таблицы в облачном клиенте).

СОЗДАНИЕ ВНЕШНЕГО ТОМА

Применимые типы объектов: EXTERNAL LOCATION

Позволяет пользователю создавать внешние тома с помощью внешнего расположения.

СОЗДАНИЕ ВНЕШНЕГО КАТАЛОГА

Применимые типы объектов: CONNECTION

Позволяет пользователю создавать внешние каталоги с помощью подключения к внешней базе данных в сценарии федерации Lakehouse.

CREATE FUNCTION

Применимые типы объектов: SCHEMA

Позволяет пользователю создавать функцию в схеме. Так как привилегии наследуются, CREATE FUNCTION также можно предоставить в каталоге, что позволяет пользователю создавать функцию в любой существующей или будущей схеме в каталоге.

Пользователь также должен иметь привилегии USE CATALOG в родительском каталоге и USE SCHEMA родительской схеме.

CREATE MODEL

Применимые типы объектов: SCHEMA

Позволяет пользователю создать зарегистрированную модель MLflow в схеме. Так как привилегии наследуются, CREATE MODEL можно также предоставить в каталоге, что позволяет пользователю создавать зарегистрированную модель в любой существующей или будущей схеме в каталоге.

Пользователь также должен иметь привилегии USE CATALOG в родительском каталоге и USE SCHEMA родительской схеме.

СОЗДАНИЕ УПРАВЛЯЕМОГО ХРАНИЛИЩА

Применимые типы объектов: EXTERNAL LOCATION

Позволяет пользователю указать расположение для хранения управляемых таблиц на уровне каталога или схемы, переопределяя корневое хранилище по умолчанию для хранилища метаданных.

CREATE SCHEMA

Применимые типы объектов: CATALOG

Позволяет пользователю создавать схему. Пользователь также должен иметь привилегию USE CATALOG к каталогу.

СОЗДАНИЕ УЧЕТНЫХ ДАННЫХ ХРАНИЛИЩА

Применимые типы объектов: хранилище метаданных Unity Catalog

Позволяет пользователю создавать учетные данные хранения в хранилище метаданных каталога Unity.

Невозможно предоставить субъекту-службе идентификатор Microsoft Entra (ранее Azure Active Directory) или субъекту-службе Azure Databricks.

СОЗДАТЬ ТАБЛИЦУ

Применимые типы объектов: SCHEMA

Пользователь может создать таблицу или представление в схеме. Так как привилегии наследуются, CREATE TABLE также может быть предоставлена в каталоге, что позволяет пользователю создавать таблицу или представление в любой существующей или будущей схеме в каталоге.

Пользователь также должен иметь привилегии USE CATALOG в родительском каталоге и привилегии USE SCHEMA родительской схемы.

CREATE MATERIALIZED VIEW

Внимание

Эта функция предоставляется в режиме общедоступной предварительной версии.

Применимые типы объектов: SCHEMA

Позволяет пользователю создать материализованное представление в схеме. Так как привилегии наследуются, CREATE MATERIALIZED VIEW также может быть предоставлена в каталоге, что позволяет пользователю создавать таблицу или представление в любой существующей или будущей схеме в каталоге.

Пользователь также должен иметь привилегии USE CATALOG в родительском каталоге и привилегии USE SCHEMA родительской схемы.

СОЗДАНИЕ ТОМА

Применимые типы объектов: SCHEMA

Позволяет пользователю создавать том в схеме. Так как привилегии наследуются, CREATE VOLUME также можно предоставить в каталоге, что позволяет пользователю создавать том в любой существующей или будущей схеме в каталоге.

Пользователь также должен иметь USE CATALOG привилегии в родительском каталоге тома и USE SCHEMA привилегии в родительской схеме.

Выполнение 

Применимые типы объектов: FUNCTION, REGISTERED MODEL

Позволяет пользователю вызывать определяемую пользователем функцию или загружать модель для вывода, если пользователь также имеет USE CATALOG свой родительский каталог и USE SCHEMA ее родительскую схему. Для функций EXECUTE предоставляет возможность просматривать определение и метаданные функции. Для зарегистрированных моделей EXECUTE предоставляет возможность просматривать метаданные для всех версий зарегистрированной модели и загружать файлы моделей.

Так как привилегии наследуются, вы можете предоставить пользователю EXECUTE привилегию в каталоге или схеме, которая автоматически предоставляет пользователю EXECUTE привилегию на все текущие и будущие функции в каталоге или схеме.

УПРАВЛЕНИЕ ALLOWLIST

Применимые типы объектов: хранилище метаданных Unity Catalog

Позволяет пользователю добавлять или изменять пути для скриптов инициализации, JAR и Maven в списке разрешений, который управляет кластерами с поддержкой каталога Unity с общим доступом. См . библиотеки allowlist и скрипты инициализации в общих вычислительных ресурсах.

MODIFY

Применимые типы объектов: TABLE

Позволяет пользователю добавлять, обновлять и удалять данные в таблицу или из нее, если пользователь также содержит SELECT таблицу, а также USE CATALOG родительский каталог и USE SCHEMA ее родительскую схему.

Так как привилегии наследуются, вы можете предоставить пользователю MODIFY привилегию в каталоге или схеме, которая автоматически предоставляет пользователю MODIFY привилегию для всех текущих и будущих таблиц в каталоге или схеме.

READ FILES

Применимые типы объектов: VOLUME, EXTERNAL LOCATION

Позволяет пользователю считывать файлы непосредственно из облачного хранилища объектов. Databricks рекомендует предоставить эту привилегию томам и предоставлять внешние расположения для ограниченных вариантов использования. Дополнительные сведения см. в разделе "Управление внешними расположениями", "Внешние таблицы" и "Внешние тома".

ЧТЕНИЕ ТОМА

Применимые типы объектов: VOLUME

Позволяет пользователю считывать файлы и каталоги, хранящиеся в томе, если пользователь также имеет USE CATALOG свой родительский каталог и USE SCHEMA ее родительскую схему.

Привилегии наследуются. Если вы можете предоставить пользователю привилегию в каталоге или схеме, вы автоматически предоставьте пользователю READ VOLUMEREAD VOLUME привилегию на все текущие и будущие тома в каталоге или схеме.

SELECT

Применимые типы объектов: TABLE, VIEW, MATERIALIZED VIEWSHARE

Если применяется к таблице или представлению, пользователь может выбрать из таблицы или представления, если пользователь также имеет USE CATALOG свой родительский каталог и USE SCHEMA ее родительскую схему. При применении к общей папке получатель может выбрать из общей папки.

Так как привилегии наследуются, вы можете предоставить пользователю SELECT привилегию в каталоге или схеме, которая автоматически предоставляет пользователю SELECT привилегии для всех текущих и будущих таблиц, а также представления в каталоге или схеме.

USE CATALOG

Применимые типы объектов: CATALOG

Эта привилегия не предоставляет доступ к каталогу, но она необходима пользователю для взаимодействия с любым объектом в каталоге. Например, чтобы выбрать данные из таблицы, пользователям необходимо иметь SELECT привилегии для этой таблицы и USE CATALOG привилегий в родительском каталоге, а также USE SCHEMA привилегии в родительской схеме.

Это полезно для того, чтобы владельцы каталога могли ограничить, насколько далеко отдельные схемы и владельцы таблиц могут предоставлять общий доступ к данным, которые они производят. Например, владелец таблицы, предоставляющий SELECT другому пользователю, не разрешает доступ пользователя на чтение к таблице, если они также не были предоставлены USE CATALOG привилегии в родительском каталоге, а также USE SCHEMA привилегии для родительской схемы.

Привилегия USE CATALOG родительского каталога не требуется для чтения метаданных объекта, если у пользователя есть BROWSE привилегии в этом каталоге.

ИСПОЛЬЗОВАНИЕ ПОДКЛЮЧЕНИЯ

Применимые типы объектов: CONNECTION

Позволяет пользователю перечислять и просматривать сведения о подключениях к внешней базе данных в сценарии федерации Lakehouse. Чтобы создать внешние каталоги для подключения, необходимо иметь CREATE FOREIGN CATALOG подключение или владение подключением.

USE SCHEMA

Применимые типы объектов: SCHEMA

Эта привилегия не предоставляет доступ к схеме, но она необходима пользователю для взаимодействия с любым объектом в схеме. Например, чтобы выбрать данные из таблицы, пользователям необходимо иметь SELECT привилегии для этой таблицы и USE SCHEMA родительской схемы, а также USE CATALOG в родительском каталоге.

Так как привилегии наследуются, вы можете предоставить пользователю USE SCHEMA привилегию в каталоге, которая автоматически предоставляет пользователю USE SCHEMA привилегию на все текущие и будущие схемы в каталоге.

USE SCHEMA Привилегия родительской схемы не требуется для чтения метаданных объекта, если у пользователя есть BROWSE права на эту схему или родительский каталог.

WRITE FILES

Применимые типы объектов: VOLUMEEXTERNAL LOCATION

Позволяет пользователю записывать файлы непосредственно в облачное хранилище объектов. Databricks рекомендует предоставить эту привилегию для томов. Предоставьте этим привилегиям временно в внешних расположениях. Дополнительные сведения см. в разделе "Управление внешними расположениями", "Внешние таблицы" и "Внешние тома".

ЗАПИСЬ ТОМА

Применимые типы объектов: VOLUME

Позволяет пользователю добавлять, удалять или изменять файлы и каталоги, хранящиеся в томе, если пользователь также содержит USE CATALOG родительский каталог и USE SCHEMA ее родительскую схему.

Привилегии наследуются. Если вы можете предоставить пользователю привилегию в каталоге или схеме, вы автоматически предоставьте пользователю WRITE VOLUMEWRITE VOLUME привилегию на все текущие и будущие тома в каталоге или схеме.

ОБНОВЛЕНИЕ

Применимые типы объектов: MATERIALIZED VIEW

Позволяет пользователю обновить материализованное представление, если пользователь также имеет USE CATALOG свой родительский каталог и USE SCHEMA ее родительскую схему.

Привилегии наследуются. При предоставлении REFRESH пользователю прав доступа к каталогу или схеме пользователь автоматически предоставляет пользователю REFRESH привилегию для всех текущих и будущих материализованных представлений в каталоге или схеме.

Типы привилегий, которые применяются только к Delta Sharing или Databricks Marketplace

В этом разделе содержатся сведения о типах привилегий, которые применяются только к delta Sharing.

CREATE PROVIDER

Применимые типы объектов: хранилище метаданных Unity Catalog

Позволяет пользователю создать объект поставщика Delta Sharing в хранилище метаданных. Поставщик определяет организацию или группу пользователей с общими данными с помощью разностного общего доступа. Создание поставщика выполняется пользователем в учетной записи databricks получателя. Сведения о безопасном использовании разностного общего доступа см. в разделе "Общий доступ к данным и ресурсам ИИ".

CREATE RECIPIENT

Применимые типы объектов: хранилище метаданных Unity Catalog

Позволяет пользователю создавать объект получателя Delta Sharing в хранилище метаданных. Получатель определяет организацию или группу пользователей, с которыми могут предоставляться доступ к данным с ними с помощью разностного общего доступа. Создание получателя выполняется пользователем в учетной записи Databricks поставщика. Сведения о безопасном использовании разностного общего доступа см. в разделе "Общий доступ к данным и ресурсам ИИ".

CREATE SHARE

Применимые типы объектов: хранилище метаданных Unity Catalog

Позволяет пользователю создать общую папку в хранилище метаданных. Общая папка — это логическая группировка для таблиц, которыми вы планируете совместно использовать разностный общий доступ.

НАСТРОЙКА РАЗРЕШЕНИЯ ОБЩЕГО РЕСУРСА

Применимые типы объектов: хранилище метаданных Unity Catalog

В Delta Sharing эта привилегия в сочетании с USE SHARE (или USE RECIPIENT владельцем получателя) предоставляет пользователю-поставщику возможность предоставлять получателю доступ к общей папке. В сочетании с USE SHAREэтим предоставляется возможность передавать владение общей папкой другому пользователю, группе или субъекту-службе.

ИСПОЛЬЗОВАНИЕ РЕСУРСОВ MARKETPLACE

Применимые типы объектов: хранилище метаданных Unity Catalog

Включен по умолчанию для всех хранилищ метаданных каталога Unity. В Databricks Marketplace эта привилегия дает пользователю возможность получать мгновенный доступ или запрашивать доступ к продуктам данных, общим в списке Marketplace. Он также позволяет пользователю получить доступ к каталогу только для чтения, который создается при совместном использовании поставщиком продукта данных. Без этой привилегии пользователю потребуется CREATE CATALOG роль администратора хранилища метаданных и USE PROVIDER разрешения. Это позволяет ограничить количество пользователей этими мощными разрешениями.

ИСПОЛЬЗОВАНИЕ ПОСТАВЩИКА

Применимые типы объектов: хранилище метаданных Unity Catalog

В Delta Sharing предоставляет пользователю-получателю доступ только для чтения ко всем поставщикам в хранилище метаданных получателя и их общих ресурсах. В сочетании с CREATE CATALOG привилегиями эта привилегия позволяет пользователю-получателю, который не является администратором хранилища метаданных, подключать общую папку в качестве каталога. Это позволяет ограничить количество пользователей с помощью мощной роли администратора хранилища метаданных.

ИСПОЛЬЗОВАНИЕ ПОЛУЧАТЕЛЯ

Применимые типы объектов: хранилище метаданных Unity Catalog

В Delta Sharing предоставляет поставщику доступ только для чтения ко всем получателям в хранилище метаданных поставщика и их общих ресурсах. Это позволяет пользователю поставщика, который не является администратором хранилища метаданных, просматривать сведения о получателе, состояние проверки подлинности получателя и список общих папок, которым поставщик предоставил общий доступ получателю.

В Databricks Marketplace это дает пользователям возможность просматривать списки и запросы потребителей в консоли поставщика.

ИСПОЛЬЗОВАНИЕ ОБЩЕГО РЕСУРСА

Применимые типы объектов: хранилище метаданных Unity Catalog

В Delta Sharing предоставляет поставщику доступ только для чтения ко всем общим папкам, определенным в хранилище метаданных поставщика. Это позволяет пользователю поставщика, который не является администратором хранилища метаданных, перечислять общие папки и перечислять ресурсы (таблицы и записные книжки) в общей папке вместе с получателями общего ресурса.

В Databricks Marketplace это дает пользователям возможность просматривать сведения об общих данных в списке.