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


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

применимо:помечено Databricks SQL помечено Databricks Runtime помечено Каталог Unity только

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

Подробные сведения об управлении привилегиями в каталоге Unity см. в статье Управление привилегиями в каталоге Unity.

Примечание.

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

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

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

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

Синтаксис

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

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

Параметры

  • CATALOG catalog_name

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

  • CLEAN ROOM clean_room_name

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

  • CONNECTION connection_name

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

  • EXTERNAL LOCATION location_name

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

  • FUNCTION function_name

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

  • MATERIALIZED VIEW view_name

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

  • METASTORE

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

  • SCHEMA schema_name

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

  • [ STORAGE | SERVICE ] CREDENTIAL credential_name

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

    Ключевые слова и STORAGE (SERVICEDatabricks Runtime 15.4 и более поздних check marked yes версий) являются необязательными.

  • SHARE share_name

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

  • TABLE table_name

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

  • VIEW view_name

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

  • VOLUME volume_name

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

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

Список типов привилегий см. в разделе привилегии каталога Unity и защищаемые объекты.

Примеры

-- 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`;