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


Использование управляемых удостоверений Azure с Azure Databricks

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

Azure автоматически управляет удостоверениями в Microsoft Entra ID для приложений, чтобы аутентифицироваться с ресурсами, поддерживающими аутентификацию Microsoft Entra ID, включая учетные записи и рабочие области Azure Databricks. Этот метод проверки подлинности получает токены Microsoft Entra ID без необходимости управления учетными данными.

На этой странице показано, как создать управляемое удостоверение, назначенное пользователем, и присвоить его вашей учетной записи Azure Databricks, рабочей области и виртуальной машине Azure. Затем вы устанавливаете и настраиваете интерфейс командной строки Databricks на виртуальной машине Azure для использования проверки подлинности управляемых удостоверений Azure и выполнения команд для автоматизации учетной записи Azure Databricks и рабочей области.

Замечание

Управляемые удостоверения для ресурсов Azure отличаются от управляемых сервисных объектов Microsoft Entra ID, которые также поддерживаются Azure Databricks для проверки подлинности. Чтобы узнать, как использовать управляемые принципалы службы идентификатора Microsoft Entra для аутентификации в Azure Databricks, см. инструкцию.

Требования

Шаг 1. Создание назначенного пользователем управляемого удостоверения

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

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

После создания управляемого удостоверения скопируйте значение идентификатора клиента на странице обзора управляемого удостоверения. Это значение потребуется в шагах 2, 3 и 7.

Шаг 2. Назначьте управляемое удостоверение вашей учетной записи

Назначьте управляемое удостоверение вашему аккаунту Azure Databricks. Databricks рассматривает управляемые идентификации как служебные принципалы. Если у вас нет доступа на уровне учетной записи, перейдите к шагу 3.

Следуйте инструкциям в разделе "Добавление субъектов-служб в учетную запись". Выберите управляемый идентификатор Microsoft Entra и вставьте идентификатор клиента из шага 1 в качестве идентификатора приложения Microsoft Entra.

Шаг 3. Назначение управляемого удостоверения рабочей области

Назначьте управляемую идентичность вашей рабочей области Azure Databricks. Databricks рассматривает управляемые идентификации как служебные принципалы. Следуйте инструкциям в статье "Назначение служебного принципала рабочему пространству".

При добавлении субъекта-службы:

  • Если рабочая область включена для федерации идентификаций: выберите служебный принципал, созданного на шаге 2.
  • Если ваша рабочая область не настроена для федерации удостоверений: используйте Идентификатор клиента из шага 1 в качестве ApplicationId.

Шаг 4. Получение идентификатора ресурса Azure для рабочей области

Получите идентификатор ресурса, который Azure назначает рабочей области Azure Databricks. Это значение потребуется на шаге 7.

  1. В рабочей области Azure Databricks щелкните свое имя пользователя в верхней строке и нажмите Azure Portal.

  2. На боковой панели в разделе "Параметры " щелкните "Свойства".

  3. Скопируйте значение идентификатора в разделе Essentials. Он должен выглядеть примерно так:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group-id>/providers/Microsoft.Databricks/workspaces/<workspace-id>
    

Шаг 5. Создание и вход на виртуальную машину Azure

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

Замечание

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

Чтобы создать и подключиться к виртуальной машине Ubuntu Server с помощью проверки подлинности SSH, следуйте инструкциям в кратком руководстве по созданию виртуальной машины Linux на портале Azure.

При создании виртуальной машины:

  • Используйте Ubuntu Server 22.04 LTS в качестве образа.
  • Выберите открытый ключ SSH в качестве типа проверки подлинности.
  • Обратите внимание на расположение загруженного файла закрытого ключа (.pem) и общедоступного IP-адреса виртуальной машины, так как вам потребуется подключиться к виртуальной машине.

Шаг 6. Назначение управляемого удостоверения виртуальной машине Azure

Свяжите управляемое удостоверение с виртуальной машиной Azure, чтобы Azure могли использовать его для проверки подлинности. См. раздел «Назначение управляемого удостоверения, определенного пользователем, для существующей виртуальной машины».

  1. На портале Azure перейдите на страницу параметров виртуальной машины Azure и щелкните "Удостоверение " в разделе "Параметры ".
  2. На назначенной пользователем вкладке нажмите кнопку +Добавить.
  3. Выберите управляемое удостоверение, созданное на шаге 1, и нажмите кнопку "Добавить".

Шаг 7. Настройка проверки подлинности

Установите и настройте интерфейс командной строки Databricks на виртуальной машине Azure для использования проверки подлинности управляемых удостоверений Azure.

Установка интерфейса командной строки

В сеансе SSH на виртуальной машине Azure установите интерфейс командной строки Databricks:

sudo apt install unzip
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sudo sh

Проверьте установку:

databricks -v

Добавить профили конфигурации

Создайте или измените .databrickscfg файл в домашнем каталоге (~/.databrickscfg) со следующим содержимым. См. профили конфигурации Azure Databricks.

Замените следующие значения:

  • <account-console-url> с URL-адресом консоли учетной записи Azure Databricks.
  • <account-id> с вашим идентификатором учетной записи Azure Databricks. См. раздел Найдите свой идентификатор учетной записи.
  • <azure-managed-identity-application-id> значение идентификатора клиента для управляемого удостоверения из шага 1.
  • <workspace-url> с вашим URL-адресом для каждой рабочей области, например https://adb-1234567890123456.7.azuredatabricks.net.
  • <azure-workspace-resource-id> с идентификатором ресурса Azure из шага 4.
  • При необходимости замените предложенные имена AZURE_MI_ACCOUNT профилей конфигурации и AZURE_MI_WORKSPACE различными именами.

Если вам не нужны операции на уровне учетной записи, опустите [AZURE_MI_ACCOUNT] раздел.

[AZURE_MI_ACCOUNT]
host            = <account-console-url>
account_id      = <account-id>
azure_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

[AZURE_MI_WORKSPACE]
host                        = <workspace-url>
azure_workspace_resource_id = <azure-workspace-resource-id>
azure_client_id             = <azure-managed-identity-application-id>
azure_use_msi               = true

Шаг 8. Проверка конфигурации

Проверьте конфигурацию, выполнив команды CLI Databricks из сеанса SSH на виртуальной машине Azure.

Чтобы проверить доступ на уровне учетной записи (если вы настроили его на шаге 7):

databricks account users list -p AZURE_MI_ACCOUNT

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

databricks users list -p AZURE_MI_WORKSPACE

Если вы переименовали профили конфигурации на шаге 7, замените AZURE_MI_ACCOUNT или AZURE_MI_WORKSPACE на пользовательские имена.