Настройка разрешения на доступ к данным
В этой статье описываются конфигурации доступа к данным, выполняемые администраторами Azure Databricks для всех хранилищ SQL с помощью пользовательского интерфейса.
Примечание.
Если рабочая область включена для каталога Unity, вам не нужно выполнять действия, описанные в этой статье. Каталог Unity поддерживает хранилища SQL по умолчанию.
Databricks рекомендует использовать тома каталога Unity или внешние расположения для подключения к облачному хранилищу объектов вместо профилей экземпляров. Каталог Unity упрощает безопасность и управление данными, предоставляя централизованное место для администрирования и аудита доступа к данным в нескольких рабочих областях в вашей учетной записи. См. статью "Что такое каталог Unity" и рекомендации по использованию внешних расположений.
Сведения о настройке всех хранилищ SQL с помощью REST API см. в разделе API хранилища SQL.
Внимание
Изменение этих параметров перезапускает все запущенные хранилища SQL.
Общие сведения о том, как включить доступ к данным, см . в списках управления доступом.
Требования
- Для настройки параметров для всех хранилищ SQL необходимо быть администратором рабочей области Azure Databricks.
Настройка субъекта-службы
Чтобы настроить доступ для хранилищ SQL к учетной записи хранения Azure Data Lake Storage 2-го поколения с помощью субъектов-служб, выполните следующие действия.
Зарегистрируйте приложение Microsoft Entra ID (ранее Azure Active Directory) и запишите следующие свойства:
- Идентификатор приложения (клиента): идентификатор, который однозначно идентифицирует приложение Идентификатора Microsoft Entra.
- Идентификатор каталога (клиента): идентификатор, который однозначно идентифицирует экземпляр идентификатора Microsoft Entra (называемый идентификатором каталога (клиента) в Azure Databricks.
- Секрет клиента: значение секрета клиента, созданного для этой регистрации приложения. Приложение будет использовать эту строку секрета для подтверждения своего удостоверения.
В учетной записи хранения добавьте назначение ролей для приложения, зарегистрированного на предыдущем шаге, чтобы предоставить ему доступ к учетной записи хранения.
Создайте область секрета с резервированием Azure Key Vault или область секрета с областью действия Databricks и запишите значение свойства имени области:
- Имя области: имя области созданного секрета.
Если вы используете Azure Key Vault, перейдите в раздел "Секреты" и ознакомьтесь с разделом "Создание секрета" в области, поддерживаемой Azure Key Vault. Затем используйте "секрет клиента", полученный на шаге 1, чтобы заполнить поле "value" этого секрета. Сохраните запись только что выбранного имени секрета.
- Имя секрета: имя созданного секрета Azure Key Vault.
При использовании области на основе Databricks создайте новый секрет с помощью интерфейса командной строки Databricks и сохраните секрет клиента, полученный в шаге 1. Сохраните запись секретного ключа, введенного на этом шаге.
- Секретный ключ: ключ созданного секрета на основе Databricks.
Примечание.
При необходимости можно создать дополнительный секрет для хранения идентификатора клиента, полученного на шаге 1.
Щелкните имя пользователя в верхней строке рабочей области и выберите "Параметры " в раскрывающемся списке.
Перейдите на вкладку "Вычисления ".
Щелкните " Управление " рядом с хранилищами SQL.
В поле "Конфигурация доступа к данным" нажмите кнопку Добавить субъект-службу.
Настройте свойства для учетной записи хранения Azure Data Lake Storage 2-го поколения.
Нажмите кнопку Добавить.
Вы увидите, что в текстовое поле "Конфигурация доступа к данным" были добавлены новые записи.
Нажмите кнопку Сохранить.
Вы также можете изменять записи текстового поля "Конфигурация доступа к данным" напрямую.
Настройка свойств доступа к данным для хранилищ SQL
Чтобы настроить свойства доступа к данным для всех хранилищ, выполните следующие действия.
Щелкните имя пользователя в верхней строке рабочей области и выберите "Параметры " в раскрывающемся списке.
Перейдите на вкладку "Вычисления ".
Щелкните " Управление " рядом с хранилищами SQL.
В текстовом поле Конфигурация доступа к данным укажите пары "ключ-значение", содержащие свойства хранилища метаданных.
Внимание
Чтобы задать для свойства конфигурации Spark значение секрета, не предоставляя Spark доступ к этому секрету, установите значение
{{secrets/<secret-scope>/<secret-name>}}
. Замените<secret-scope>
на область секрета, а<secret-name>
— на имя секрета. Значение должно начинаться с{{secrets/
и заканчиваться на}}
. Дополнительные сведения об этом синтаксисе см. в разделе Синтаксис для создания ссылок на секреты в свойстве конфигурации Spark или переменной среды.Нажмите кнопку Сохранить.
Вы также можете настроить свойства доступа к данным с помощью поставщика Databricks Terraform и databricks_sql_global_config.
Поддерживаемые свойства
Для записи, заканчивающейся на
*
, поддерживаются все свойства в этом префиксе.Например, указывает,
spark.sql.hive.metastore.*
что оба иspark.sql.hive.metastore.version
поддерживаются, а также любые другие свойства, начинающиеся сspark.sql.hive.metastore
spark.sql.hive.metastore.jars
.Для свойств, значения которых содержат конфиденциальную информацию, эту информацию можно сохранить в секрете и присвоить свойству значение имени секрета с помощью следующей синтаксической конструкции:
secrets/<secret-scope>/<secret-name>
.
Для хранилищ SQL поддерживаются следующие свойства:
spark.sql.hive.metastore.*
spark.sql.warehouse.dir
spark.hadoop.datanucleus.*
spark.hadoop.fs.*
spark.hadoop.hive.*
spark.hadoop.javax.jdo.option.*
spark.hive.*
Дополнительные сведения о настройке этих свойств см. в разделе Внешнее хранилище метаданных Hive.