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


Включение доступа к внешним данным в каталоге Unity

Azure Databricks предоставляет доступ к таблицам каталога Unity с помощью REST API Unity и каталога REST Iceberg.

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

REST API Unity поддерживает прямые чтения для таблиц Delta, в то время как каталог REST Iceberg обеспечивает чтение таблиц, подготовленных для операций чтения Iceberg. См. доступ к данным Databricks с помощью внешних систем.

Включить доступ к внешним данным в хранилище метаданных

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

Чтобы включить доступ к внешним данным, сделайте следующее:

  1. В рабочей области Azure Databricks, подключенной к хранилищу метаданных, щелкните на значок Каталога .
  2. Щелкните значок шестеренки в верхней части панели каталога и выберите Metastore.
  3. На вкладке Сведения включите доступ к внешним данным.

Заметка

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

предоставить субъекту EXTERNAL USE SCHEMA

Внешним клиентам, подключающимся к Azure Databricks, требуется авторизация от достаточно привилегированного субъекта.

Azure Databricks поддерживает OAuth и личные маркеры доступа (PAT) для проверки подлинности. См. аутентификацию доступа к ресурсам Azure Databricks.

Субъект, запрашивающий временные учетные данные, должен иметь следующее:

  • Привилегия EXTERNAL USE SCHEMA в содержащей схеме или родительском каталоге.

    Эта привилегия всегда должна быть предоставлена явным образом. Только владелец родительского каталога может предоставить его. Чтобы избежать случайного вывода данных, ALL PRIVILEGES не включает привилегию EXTERNAL USE SCHEMA, а владельцы схем по умолчанию не имеют этой привилегии.

  • SELECT разрешение на таблицу, USE CATALOG на родительский каталог и USE SCHEMA на родительскую схему.

В следующем примере синтаксиса демонстрируется предоставление EXTERNAL USE SCHEMA пользователю:

GRANT EXTERNAL USE SCHEMA ON SCHEMA catalog_name.schema_name TO `user@company.com`

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