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


Создание учетных данных хранилища для подключения к Azure Data Lake Storage 2-го поколения

В этой статье описывается, как создать учетные данные хранения в каталоге Unity для подключения к Azure Data Lake Storage 2-го поколения.

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

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

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

Каталог Unity поддерживает два варианта облачного хранилища для Контейнеров Azure Databricks: Azure Data Lake Storage 2-го поколения контейнеров и контейнеров Cloudflare R2. Cloudflare R2 предназначен в первую очередь для вариантов использования Delta Sharing, в которых вы хотите избежать исходящего трафика данных. Azure Data Lake Storage 2-го поколения подходит для большинства других вариантов использования. В этой статье рассматривается создание учетных данных хранения для контейнеров Azure Data Lake Storage 2-го поколения. Сведения о Cloudflare R2 см. в статье "Создание учетных данных хранилища для подключения к Cloudflare R2".

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

Требования

В Azure Databricks:

  • Рабочая область Azure Databricks включена для каталога Unity.

  • CREATE STORAGE CREDENTIAL привилегии в хранилище метаданных каталога Unity, подключенном к рабочей области. Администраторы учетных записей и администраторы хранилища метаданных имеют эту привилегию по умолчанию.

    Примечание.

    Субъекты-службы должны иметь роль администратора учетной записи, чтобы создать учетные данные хранения, использующие управляемое удостоверение. Вы не можете делегировать CREATE STORAGE CREDENTIAL субъекту-службе. Это относится как к субъектам-службам Azure Databricks, так и к субъектам-службам Microsoft Entra ID (ранее — Azure Active Directory).

В клиенте Azure:

  • Контейнер хранилища Azure Data Lake Storage 2-го поколения в том же регионе, что и рабочая область, из которой вы хотите получить доступ к данным.

    У учетной записи хранения Azure Data Lake Storage 2-го поколения должно быть иерархическое пространство имен.

  • Участник или владелец группы ресурсов Azure.

  • Владелец или пользователь с ролью администратора доступа пользователей Azure RBAC в учетной записи хранения.

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

Вы можете использовать управляемое удостоверение Azure или субъект-службу в качестве удостоверения, которое авторизует доступ к контейнеру хранилища. Настоятельно рекомендуется использовать управляемые удостоверения. Они дают возможность Unity Catalog получать доступ к учетным записям хранения, защищенным сетевыми правилами (что невозможно с помощью субъектов-служб), и устраняет необходимость в администрировании и смене секретов. Если вы хотите использовать субъект-службу, см. статью "Создание управляемого хранилища каталога Unity" с помощью субъекта-службы (устаревшая версия).

  1. В портал Azure создайте соединитель доступа Azure Databricks и назначьте ему разрешения для контейнера хранилища, к которому вы хотите получить доступ, с помощью инструкций в статье "Настройка управляемого удостоверения для каталога Unity".

    Соединитель доступа Azure Databricks — это ресурс Azure от Майкрософт, который позволяет подключать управляемые удостоверения к учетной записи Azure Databricks. Чтобы добавить учетные данные хранения, необходимо иметь роль участника или выше в ресурсе соединителя доступа в Azure.

    Запишите идентификатор ресурса соединителя доступа.

  2. Войдите в рабочую область Azure Databricks с поддержкой каталога Unity в качестве пользователя, имеющего привилегию CREATE STORAGE CREDENTIAL .

    Роли администратора хранилища метаданных и администратора учетной записи включают эту привилегию. Если вы вошли в систему в качестве субъекта-службы (будь то идентификатор Microsoft Entra или собственный субъект-служба Azure Databricks), необходимо иметь роль администратора учетной записи для создания учетных данных хранения, использующих управляемое удостоверение.

  3. Щелкните Значок каталога каталог.

  4. В верхней части области каталога щелкните Значок добавления или плюса значок "Добавить " и выберите " Добавить учетные данные хранилища" в меню.

    Этот параметр не отображается, если у вас нет привилегий CREATE STORAGE CREDENTIAL .

    Кроме того, на странице быстрого доступа нажмите кнопку "Внешние данные", перейдите на вкладку "Учетные данные > хранилища" и выберите "Создать учетные данные".

  5. Выберите тип учетных данных управляемого удостоверения Azure.

  6. Введите имя учетных данных и введите идентификатор ресурса соединителя доступа в формате:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
    
  7. (Необязательно) Если вы создали соединитель доступа с помощью управляемого удостоверения, назначаемого пользователем, введите идентификатор ресурса управляемого удостоверения в поле идентификатора управляемого удостоверения , назначаемого пользователем, в формате:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>
    
  8. (Необязательно) Если у пользователей есть доступ только для чтения к внешним расположениям, которые используют эти учетные данные хранения, выберите только чтение. Дополнительные сведения см. в разделе "Пометить учетные данные хранилища как доступные только для чтения".

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

  10. (Необязательно) Привязка учетных данных хранилища к определенным рабочим областям.

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

  11. Создайте внешнее расположение, которое ссылается на эти учетные данные хранилища.

(Необязательно) Назначение учетных данных хранилища определенным рабочим областям

Внимание

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

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

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

Дополнительные сведения о привязке рабочей области см. в разделе (Необязательно) Назначение внешнего расположения определенным рабочим областям и ограничение доступа к определенным рабочим областям.

Примечание.

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

Привязка учетных данных хранилища к одной или нескольким рабочим областям

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

Необходимые разрешения: администратор хранилища метаданных или владелец учетных данных хранилища.

Примечание.

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

Обозреватель каталогов

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

  2. На боковой панели щелкните Значок каталога "Каталог".

  3. В верхней части области каталога щелкните Значок шестеренки значок шестеренки и выберите учетные данные хранилища.

    Кроме того, на странице быстрого доступа нажмите кнопку "Внешние данные" и перейдите на вкладку "Учетные данные > хранилища".

  4. Выберите учетные данные хранилища и перейдите на вкладку "Рабочие области ".

  5. На вкладке "Рабочие области" снимите флажок "Все рабочие области" с флажком "Доступ ".

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

  6. Нажмите кнопку " Назначить рабочим областям" и введите или найдите рабочие области, которые вы хотите назначить.

Чтобы отменить доступ, перейдите на вкладку "Рабочие области" , выберите рабочую область и нажмите кнопку "Отозвать". Чтобы разрешить доступ из всех рабочих областей, установите флажок "Все рабочие области".

CLI

Существует две группы команд CLI Databricks и два шага, необходимые для назначения учетных данных хранения рабочей области.

В следующих примерах замените <profile-name> имя профиля конфигурации проверки подлинности Azure Databricks. Он должен включать значение личного маркера доступа в дополнение к имени экземпляра рабочей области и идентификатору рабочей области, в которой вы создали личный маркер доступа. См . проверку подлинности маркера личного доступа Azure Databricks.

  1. storage-credentials Используйте команду группы update команд, чтобы задать для учетных isolation mode ISOLATEDданных хранилища значение :

    databricks storage-credentials update <my-storage-credential> \
    --isolation-mode ISOLATED \
    --profile <profile-name>
    

    Значение по умолчанию isolation-modeOPEN для всех рабочих областей, подключенных к хранилищу метаданных.

  2. workspace-bindings Используйте команду группы update-bindings команд, чтобы назначить рабочие области учетным данным хранилища:

    databricks workspace-bindings update-bindings storage-credential <my-storage-credential> \
    --json '{
      "add": [{"workspace_id": <workspace-id>}...],
      "remove": [{"workspace_id": <workspace-id>}...]
    }' --profile <profile-name>
    

    "add" "remove" Используйте свойства для добавления или удаления привязок рабочей области.

    Примечание.

    Привязка только для чтения (BINDING_TYPE_READ_ONLY) недоступна для учетных данных хранения. Поэтому для привязки учетных данных хранилища нет никаких причин binding_type .

Чтобы вывести список всех назначений рабочих областей для учетных данных хранения, используйте workspace-bindings команду группы get-bindings команд:

databricks workspace-bindings get-bindings storage-credential <my-storage-credential> \
--profile <profile-name>

Отмена привязки учетных данных хранилища из рабочей области

Инструкции по отмене доступа к учетным данным хранилища с помощью обозревателя каталогов или workspace-bindings группы команд CLI включаются в привязку учетных данных хранилища к одной или нескольким рабочим областям.

Следующие шаги

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

Можно определить внешние расположения с помощью учетных данных хранилища. См. статью "Создание учетных данных хранилища" для подключения к Azure Data Lake Storage 2-го поколения.