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


Конфигурации доступа к данным

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

Примечание.

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

Внимание

Изменение этих параметров перезапускает все запущенные хранилища SQL.

Требования

  • Для настройки этих параметров необходимо быть администратором рабочей области Azure Databricks.

Настройка сервисного принципала

Чтобы настроить доступ SQL-складов к учетной записи хранения Azure Data Lake с помощью сервисных принципалов, выполните следующие шаги.

  1. Зарегистрируйте приложение Microsoft Entra ID (ранее Azure Active Directory) и запишите следующие свойства:

    • Идентификатор приложения (клиента): идентификатор, который однозначно идентифицирует приложение Идентификатора Microsoft Entra.
    • Идентификатор каталога (клиента): идентификатор, который однозначно идентифицирует экземпляр идентификатора Microsoft Entra (называемый идентификатором каталога (клиента) в Azure Databricks.
    • Секрет клиента: значение секрета клиента, созданного для этой регистрации приложения. Приложение будет использовать эту секретную строку для подтверждения своей личности.
  2. В учетной записи хранения добавьте назначение ролей для приложения, зарегистрированного на предыдущем шаге, чтобы предоставить ему доступ к учетной записи хранения.

  3. Создайте область секрета с поддержкой Azure Key Vault или Databricks, см. статью "Управление областями секретов" и запишите значение свойства имени области:

    • Имя области: имя области созданного секрета.
  4. При использовании Azure Key Vault создайте секрет в Azure Key Vault, используя секрет клиента в поле "Значение". Чтобы увидеть пример, см. Шаг 4: Добавление секрета клиента в Azure Key Vault. Сохраните запись секретного имени, которое вы выбрали.

    • Имя секрета: имя созданного секрета Azure Key Vault.
  5. При использовании области, поддерживаемой Databricks, создайте новый секрет с помощью Databricks CLI и используйте его для хранения клиентского секрета, полученного на шаге 1. Сохраните запись секретного ключа, введенного на этом шаге.

    • Секретный ключ: ключ созданного секрета на основе Databricks.

    Примечание.

    При необходимости можно создать дополнительный секрет для хранения идентификатора клиента, полученного на шаге 1.

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

  7. Перейдите на вкладку "Вычисления ".

  8. Щелкните Управление рядом с SQL-хранилищами.

  9. В поле "Конфигурация доступа к данным" нажмите кнопку Add Service Principal.

  10. Настройте свойства для учетной записи хранения Azure Data Lake Storage.

  11. Нажмите кнопку Добавить.

    Учетная запись хранения ADLS2

    Вы увидите, что в текстовое поле "Конфигурация доступа к данным" были добавлены новые записи.

  12. Нажмите кнопку Сохранить.

Вы также можете изменять записи текстового поля "Конфигурация доступа к данным" напрямую.

Настройка свойств доступа к данным для хранилищ SQL

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

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

  2. Перейдите на вкладку "Вычисления ".

  3. Щелкните Управление рядом с SQL-хранилищами.

  4. В текстовом поле Конфигурация доступа к данным укажите пары "ключ-значение", содержащие свойства хранилища метаданных.

    Внимание

    Чтобы задать для свойства конфигурации Spark значение секрета без предоставления значения секрета Spark, задайте значение {{secrets/<secret-scope>/<secret-name>}}. Замените <secret-scope> на область секрета, а <secret-name> — на имя секрета. Значение должно начинаться с {{secrets/ и заканчиваться на }}. Дополнительные сведения об этом синтаксисе см. в разделе "Управление секретами".

  5. Нажмите кнопку Сохранить.

Вы также можете настроить свойства доступа к данным с помощью поставщика Databricks Terraform и databricks_sql_global_config.

Поддерживаемые свойства

  • Для записи, заканчивающейся на *, поддерживаются все свойства в этом префиксе.

    Например, spark.sql.hive.metastore.* указывает, что поддерживаются и spark.sql.hive.metastore.jars, и spark.sql.hive.metastore.version, а также любые другие свойства, начинающиеся с spark.sql.hive.metastore.

  • Для свойств, значения которых содержат конфиденциальную информацию, можно хранить конфиденциальную информацию в секрете и задать для свойства имя секрета с помощью следующего синтаксиса: 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.