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


Проверка подлинности с помощью личных маркеров доступа Azure Databricks (устаревшая версия)

Токены личного доступа Azure Databricks позволяют выполнять проверку подлинности в ресурсах и API на уровне рабочей области. Их можно хранить в переменных среды или профилях конфигурации Azure Databricks. Каждый PAT действителен только для одной рабочей области, и пользователь может создавать до 600 PAT для каждой рабочей области. Azure Databricks автоматически аннулирует PATs, которые не использовались в течение 90 дней.

Внимание

Проверка подлинности имени пользователя и пароля (без маркеров) была прекращена 10 июля 2024 года. Databricks настоятельно рекомендует использовать OAuth вместо PATs для проверки подлинности учетной записи пользователя, так как OAuth обеспечивает более надежную безопасность. Сведения о проверке подлинности с помощью учетной записи пользователя Databricks с помощью OAuth см. в статье "Авторизация доступа пользователей к Azure Databricks с помощью OAuth".

Вы не можете использовать личные маркеры доступа для автоматизации функциональных возможностей на уровне учетной записи Azure Databricks. Вместо этого используйте маркеры идентификатора Microsoft Entra администраторов учетных записей Azure Databricks. Администраторы учетной записи Azure Databricks могут быть пользователями или сервисными принципалами. Дополнительные сведения см. в разделе:

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

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

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

  2. Щелкните "Разработчик".

  3. Рядом с маркерами доступа нажмите кнопку "Управление".

  4. Нажмите кнопку "Создать новый маркер".

  5. Введите комментарий, который поможет определить этот токен в будущем.

  6. Задайте время существования маркера в днях. См . раздел "Задать максимальное время существования новых личных маркеров доступа".

  7. Нажмите кнопку "Создать".

  8. Скопируйте отображаемый маркер в безопасное расположение, а затем нажмите кнопку "Готово". Безопасно сохраните маркер и не делитесь им. Если вы потеряете его, необходимо создать новый токен.

Если вы не можете создать или использовать маркеры, администратор рабочей области может отключить маркеры или не предоставить вам разрешение. Обратитесь к администратору рабочей области или следующему:

Создание личных маркеров доступа для субъектов-служб

Субъект-служба может самостоятельно создавать личные маркеры доступа.

  1. Выполните следующую команду, чтобы создать маркер доступа:

    databricks tokens create --lifetime-seconds <lifetime-seconds> -p <profile-name>
    

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

    • <lifetime-seconds>: время существования токена в секундах, например 86400 в течение 1 дня. По умолчанию максимальное значение рабочей области (обычно 730 дней).
    • <profile-name>: профиль конфигурации с информацией об аутентификации. По умолчанию — DEFAULT.
  2. Скопируйте token_value из ответа — это маркер доступа для вашего служебного субъекта. Безопасно сохраните маркер и не делитесь им. Если вы потеряете его, необходимо создать новый токен.

Если вы не можете создать или использовать маркеры, администратор рабочей области может отключить маркеры или не предоставить вам разрешение. Обратитесь к администратору рабочей области или следующему:

Аутентификация личного токена доступа

Чтобы настроить аутентификацию с помощью личного токена доступа Azure Databricks, установите следующие связанные переменные среды, поля, .databrickscfg поля Terraform или Config поля:

  • Узел Azure Databricks, указанный в качестве целевого URL-адреса Azure Databricks для каждой рабочей области, например https://adb-1234567890123456.7.azuredatabricks.net.
  • Токен личного доступа для учетной записи пользователя в Azure Databricks.

Чтобы выполнить аутентификацию с помощью маркера личного доступа Azure Databricks, включите следующее в ваш код в зависимости от используемого инструмента или пакета SDK.

Окружающая среда

Сведения об использовании переменных среды для определенного типа проверки подлинности Azure Databricks с помощью инструмента или пакета SDK см. в статье "Авторизация доступа к ресурсам Azure Databricks " или документации по средству или пакету SDK. См. также переменные среды и поля для единой проверки подлинности и приоритет метода проверки подлинности.

Задайте следующие переменные среды:

Профиль

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

Задайте следующие значения в файле .databrickscfg. В этом случае хостом является URL-адрес рабочего пространства Azure Databricks , например .

[<some-unique-configuration-profile-name>]
host  = <workspace-url>
token = <token>

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

Примечание.

Следующая процедура использует интерфейс командной строки Databricks для создания профиля конфигурации Azure Databricks с именем DEFAULT. Если у вас уже есть DEFAULT профиль конфигурации, эта процедура перезапишет ваш существующий DEFAULT профиль конфигурации.

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

Чтобы создать профиль конфигурации с именем, отличным от DEFAULT, замените часть DEFAULT в --profile DEFAULT следующей команды databricks configure другим именем для профиля конфигурации.

  1. Используйте интерфейс командной строки Databricks для создания профиля конфигурации Azure Databricks с именем DEFAULT , использующего проверку подлинности маркера личного доступа Azure Databricks. Для этого выполните следующую команду:

    databricks configure --profile DEFAULT
    
  2. В поле запроса Databricks Host введите URL-адрес Azure Databricks для каждой рабочей области, например https://adb-1234567890123456.7.azuredatabricks.net.

  3. В поле Personal Access Token введите личный токен доступа Azure Databricks для рабочей области.

Интерфейс командной строки (CLI)

Выполните команду databricks configure для CLI Databricks. В подсказках введите следующие настройки:

  • Узел Azure Databricks, указанный в качестве целевого URL-адреса Azure Databricks для каждой рабочей области, например https://adb-1234567890123456.7.azuredatabricks.net.
  • Токен личного доступа для учетной записи пользователя в Azure Databricks.

Дополнительные сведения см. в разделе "Устаревшая проверка подлинности токена личного доступа".

Подключить

Примечание.

Аутентификация токена личного доступа Azure Databricks поддерживается в следующих версиях Databricks Connect:

  • Для Python, Databricks Connect для Databricks Runtime 13.3 LTS и выше.
  • Для Scala, используйте Databricks Connect с Databricks Runtime версии 13.3 LTS и выше.

Для Databricks Connect используйте интерфейс командной строки Databricks, чтобы задать значения в .databrickscfg файле для операций уровня рабочей области Azure Databricks, как указано в разделе "Профиль".

Следующая процедура создает профиль конфигурации Azure Databricks с именем DEFAULT, который перезаписывает любой существующий DEFAULT профиль. Чтобы проверить, существует ли DEFAULT профиль, выполните databricks auth env --profile DEFAULT. Если он существует, используйте другое имя профиля.

  1. Выполните следующую команду, чтобы создать профиль конфигурации Azure Databricks с именем DEFAULT, который использует аутентификацию с помощью персонального токена доступа.

    databricks configure --configure-cluster --profile DEFAULT
    
  2. В поле запроса Databricks Host введите URL-адрес Azure Databricks для каждой рабочей области, например https://adb-1234567890123456.7.azuredatabricks.net.

  3. В поле "Персональный токен доступа" введите персональный токен доступа для вашей рабочей области.

  4. В списке доступных кластеров выберите целевой кластер Azure Databricks в рабочей области. Вы можете ввести любую часть отображаемого имени кластера, чтобы отфильтровать список доступных кластеров.

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

Azure Databricks предоставляет REST-эндпоинт /api/2.0/token/create для выдачи PAT. Дополнительные сведения об API см. в разделе "Создание маркера пользователя".

В следующем примере задайте следующие значения:

  • <databricks-instance>: URL-адрес рабочей области Databricks. Например, dbc-abcd1234-5678.cloud.databricks.com.
  • <your-existing-access-token>: существующий действительный PAT (строка), имеющий разрешения на создание новых токенов.
  • <lifetime-seconds>: время существования токена в секундах.
curl -X POST https://<databricks-instance>/api/2.0/token/create \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
  "lifetime_seconds": <lifetime-seconds>
}'

При успешном выполнении это приведёт к полезной нагрузке ответа, похожей на следующую:

{
  "access_token": "<your-newly-issued-pat>",
  "token_type": "Bearer",
  "expires_in": <the-duration-of-the-new-pat>
}

Укажите новый токен, полученный из ответа, в заголовке Authorization при последующих вызовах REST API Databricks. Например:

# This example uses a simple GET. For POST or other REST verbs, you may need to provide additional parameters.
curl -X GET "https://<databricks-instance>/api/2.0/<path-to-endpoint>" \
     -H "Authorization: Bearer <your-new-pat>"
import requests

headers = {
    'Authorization': 'Bearer <your-new-pat>'
}
# This example is for an HTTP GET operation.
response = requests.get('https://<databricks-instance>/api/2.0/<path-to-endpoint>', headers=headers)