Привилегии и защищаемые объекты в каталоге Unity

Область применения:проверка помечены да только каталог Unity среды выполненияпроверка помечены даDatabricks SQL проверка помечены да Databricks

Привилегия — это право, предоставленное субъекту для работы с защищаемым объектом в хранилище метаданных. Модель привилегий и защищаемые объекты различаются в зависимости от того, используется ли хранилище метаданных каталога Unity или устаревшее хранилище метаданных Hive. В этой статье описывается модель привилегий для каталога Unity. Если вы используете хранилище метаданных Hive, см. статью "Привилегии" и защищаемые объекты в хранилище метаданных Hive

Примечание.

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

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

Защищаемый объект — это объект, определенный в хранилище метаданных каталога Unity, в отношении которого субъекту могут быть предоставлены привилегии. Для управления привилегиями для любого объекта необходимо быть его владельцем.

Синтаксис

securable_object
  { CATALOG [ catalog_name ] |
    CONNECTION connection_name |
    EXTERNAL LOCATION location_name |
    FUNCTION function_name |
    METASTORE |
    SCHEMA schema_name |
    SHARE share_name |
    STORAGE CREDENTIAL credential_name |
    [ TABLE ] table_name |
    MATERIALIZED VIEW view_name |
    VIEW view_name |
    VOLUME volume_name
  }

Вы также можете указать SERVER вместо CONNECTION него и DATABASE вместо SCHEMAнего.

Параметры

  • CATALOGcatalog_name

    Управляет доступом ко всему каталогу данных.

  • CONNECTIONconnection_name

    Управляет доступом к подключению.

  • EXTERNAL LOCATIONlocation_name

    Управляет доступом к внешнему расположению.

  • FUNCTIONfunction_name

    Управляет доступом к определяемой пользователем функции.

  • MATERIALIZED VIEWview_name

    Внимание

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

    Управляет доступом к материализованному представлению.

  • METASTORE

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

  • REGISTERED MODEL

    Управляет доступом к зарегистрированной модели MLflow.

  • SCHEMAschema_name

    Управляет доступом к схеме.

  • STORAGE CREDENTIALcredential_name

    Управляет доступом к учетным данным хранилища.

  • SHAREshare_name

    Управляет доступом к общей папке получателю.

  • TABLEtable_name

    Управляет доступом к управляемой или внешней таблице. Если не удается найти таблицу Azure Databricks, возникает ошибка TABLE_OR_VIEW_NOT_FOUND .

  • VIEWview_name

    Управляет доступом к представлению. Если представление не удается найти Azure Databricks, возникает ошибка TABLE_OR_VIEW_NOT_FOUND .

  • VOLUMEvolume_name

    Управляет доступом к тому. Если том не удается найти Azure Databricks, возникает ошибка.

Модель наследования

Защищаемые объекты в каталоге Unity являются иерархическими, а привилегии наследуются вниз. Это означает, что предоставление привилегий в каталоге автоматически предоставляет права всем текущим и будущим схемам в каталоге. Аналогичным образом привилегии, предоставленные схеме, наследуются всеми текущими и будущими таблицами и представлениями в этой схеме.

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

Типы привилегий

В следующей таблице показано, какие привилегии каталога 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 Нет
Поставщик нет
  • APPLY TAG

    Применение и изменение тегов в объекте.

  • ALL PRIVILEGES

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

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

  • BROWSE

    Внимание

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

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

  • CREATE CATALOG

    Создайте каталоги в хранилище метаданных каталога Unity.

  • CREATE CONNECTION

    Создайте внешние подключения в хранилище метаданных каталога Unity.

  • CREATE EXTERNAL LOCATION

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

  • CREATE EXTERNAL TABLE

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

  • CREATE EXTERNAL VOLUME

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

  • CREATE FOREIGN CATALOG

    Создайте каталоги во внешнем подключении. Затем каждый внешний каталог предоставляет схемы, доступные в федеративной целевой системе.

  • CREATE FUNCTION

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

  • CREATE MANAGED STORAGE

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

  • CREATE MATERIALIZED VIEW

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

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

  • CREATE MODEL

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

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

  • CREATE PROVIDER

    (Для получателей данных разностного общего доступа) Создайте поставщика в хранилище метаданных каталога Unity.

  • CREATE RECIPIENT

    (Для поставщиков данных Delta Sharing) Создайте получателя в хранилище метаданных каталога Unity.

  • CREATE SCHEMA

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

  • CREATE SHARE

    (Для поставщиков данных Delta Sharing) Создайте общую папку в хранилище метаданных каталога Unity.

  • CREATE STORAGE CREDENTIAL

    Создайте учетные данные хранения в хранилище метаданных каталога Unity.

  • CREATE TABLE

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

  • CREATE VOLUME

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

  • EXECUTE

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

  • MODIFY

    COPY INTO, UPDATEDELETE, INSERT или MERGE INTO для таблицы.

  • READ FILES

    Выполните запрос файлов напрямую с использованием учетных данных хранилища или внешнего расположения.

  • READ VOLUME

    Запрос файлов в томе.

  • REFRESH

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

  • SELECT

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

  • SET SHARE PERMISSION

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

  • USE CATALOG

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

  • USE CONNECTION

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

  • USE MARKETPLACE ASSETS

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

  • USE PROVIDER

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

  • USE RECIPIENT

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

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

  • USE SCHEMA

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

  • USE SHARE

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

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

  • WRITE FILES

    Непосредственное выполнение команды COPY INTO для файлов, управляемых учетными данными хранилища или внешним расположением.

  • WRITE VOLUME

    Непосредственно СКОПИРУЙТЕ ФАЙЛЫ Втом.

Примеры

-- Grant a privilege to the user alf@melmak.et
> GRANT SELECT ON TABLE t TO `alf@melmak.et`;

-- Revoke a privilege from the general public group.
> REVOKE USE SCHEMA ON SCHEMA some_schema FROM `alf@melmak.et`;