Доступ к хранилищу с помощью субъекта-службы и идентификатора Microsoft Entra (Azure Active Directory)
Примечание.
В этой статье описываются устаревшие шаблоны для настройки доступа к Azure Data Lake Storage 2-го поколения.
Databricks рекомендует использовать управляемые удостоверения Azure в качестве учетных данных хранилища Unity Catalog для подключения к Azure Data Lake Storage 2-го поколения вместо служебных принципов. Управляемые удостоверения имеют преимущество, позволяя каталогу Unity получать доступ к учетным записям хранения, защищенным сетевыми правилами, что невозможно с помощью субъектов-служб, и они устраняют необходимость управления и смены секретов. Дополнительные сведения см. в статье Использование управляемых удостоверений Azure в каталоге Unity для доступа к хранилищу.
Регистрация приложения с помощью идентификатора Microsoft Entra создает субъект-службу, который можно использовать для предоставления доступа к учетным записям хранения Azure.
Затем вы можете настроить доступ к этим служебным принципалам, используя их как учетные данные хранения в каталоге Unity или учетные данные, сохраняемые с использованием секретов.
Регистрация приложения идентификатора Microsoft Entra
Регистрация приложения Microsoft Entra ID (ранее Azure Active Directory) и назначение соответствующих разрешений создаст субъект-службу, который может получить доступ к ресурсам хранилища Azure Data Lake Storage 2-го поколения или BLOB-объектов.
Чтобы зарегистрировать приложение идентификатора Microsoft Entra, необходимо иметь Application Administrator
роль или Application.ReadWrite.All
разрешение в идентификаторе Microsoft Entra.
- В портал Azure перейдите в службу идентификатора Microsoft Entra.
- В разделе Управление щелкните Регистрация приложений.
- Щелкните + Новая регистрация. Введите имя приложения и щелкните Зарегистрировать.
- Щелкните " Сертификаты и секреты".
- Щелкните + Создать секрет клиента.
- Добавьте описание секрета и нажмите кнопку Добавить.
- Скопируйте и сохраните значение для нового секрета.
- В обзоре регистрации приложения скопируйте и сохраните Идентификатор приложения (клиента) и Идентификатор каталога (клиента).
Назначение ролей
Вы управляете доступом к ресурсам хранилища путем назначения ролей регистрации приложения Идентификатора Майкрософт, связанной с учетной записью хранения. В зависимости от конкретных требований может потребоваться назначить другие роли.
Чтобы назначить роли в учетной записи хранения, необходимо иметь роль владельца или администратора доступа пользователей Azure RBAC в учетной записи хранения.
- На портале Azure перейдите в службу Учетные записи хранения.
- Выберите учетную запись хранения Azure для использования с этой регистрацией приложения.
- Выберите Управление доступом (IAM).
- Щелкните + Добавить и выберите Добавить назначение ролей в раскрывающемся меню.
- Задайте для поля
Select имя приложения идентификатора Microsoft ИД и задайте ролизначение участнику данных BLOB-объектов хранилища. - Нажмите кнопку Сохранить.
Чтобы включить доступ к событиям файлов в учетной записи хранения с помощью субъекта-службы, необходимо иметь роль владельца или администратора доступа пользователей Azure RBAC в группе ресурсов Azure, в которую находится ваша учетная запись Azure Data Lake Storage 2-го поколения.
- Выполните описанные выше действия и назначьте участника данных очереди хранилища и роли участника учетной записи хранения субъект-службу.
- Перейдите к группе ресурсов Azure, в которой находится учетная запись Azure Data Lake Storage 2-го поколения.
- Перейдите к Контроль доступа (IAM), щелкните + Добавитьи выберите Добавить назначение ролей.
- Выберите роль EventGrid EventSubscription Contributor и нажмите Далее.
- В разделе Назначение доступа квыберите служебный принципал.
- Щелкните +Выбрать участников, выберите субъект-службу и щелкните Проверить и назначить.
В качестве альтернативы, можно ограничить доступ, предоставив принципалу службы только роль участника данных очереди хранилища и не предоставляя ролей группе ресурсов. В этом случае Azure Databricks не может настраивать события файлов от вашего имени.