Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure Databricks личные маркеры доступа (PATs) позволяют аутентифицироваться к ресурсам и API на уровне рабочей области. Их можно хранить в переменных среды или в профилях конфигурации Azure Databricks. Каждый PAT действителен только для одной рабочей области, и пользователь может создавать до 600 PAT для каждой рабочей области. Azure Databricks автоматически отменяет PAT, которые не использовались в течение 90 дней.
Внимание
По возможности Databricks рекомендует использовать OAuth вместо PATS для проверки подлинности учетной записи пользователя, так как OAuth обеспечивает более надежную безопасность. Сведения о проверке подлинности с помощью учетной записи пользователя Databricks с помощью OAuth см. в статье Authorize user access to Azure Databricks with OAuth.
Вы не можете использовать персональные токены доступа для автоматизации функций Azure Databricks на уровне учетной записи. Вместо этого используйте токены Microsoft Entra ID администраторов учетных записей Azure Databricks. Azure Databricks администраторы учетных записей могут быть пользователями или служебными принципалами. Дополнительные сведения см. в разделе:
Создание личных маркеров доступа для пользователей рабочей области
Чтобы создать личный маркер доступа для пользователя рабочей области Azure Databricks, сделайте следующее:
- В рабочей области Azure Databricks щелкните имя пользователя в верхней строке и выберите Settings.
- Щелкните "Разработчик".
- Рядом с маркерами доступа нажмите кнопку "Управление".
- Нажмите кнопку "Создать новый маркер".
- Введите комментарий, который поможет определить этот токен в будущем.
- Задайте время существования маркера в днях. См . раздел "Задать максимальное время существования новых личных маркеров доступа".
- Чтобы ограничить разрешения маркера, выберите тип маркера и добавьте области API. См. Персональные токены доступа с заданной областью.
- Нажмите кнопку "Создать".
- Скопируйте отображаемый маркер в безопасное расположение, а затем нажмите кнопку "Готово". Безопасно сохраните маркер и не делитесь им. Если вы потеряете его, необходимо создать новый токен.
Если вы не можете создать или использовать маркеры, администратор рабочей области может отключить маркеры или не предоставить вам разрешение. Обратитесь к администратору рабочей области или следующему:
- Включение или отключение проверки подлинности личного маркера доступа для рабочей области
- Разрешения токена личного доступа
Маркеры личного доступа с областью действия
Ограниченные личные токены доступа ограничивают разрешения токена для определенных операций API. Вместо предоставления полного доступа к рабочей области вы можете назначить одну или несколько областей API, таких как sql, unity-catalog, или scim, ограничивая, какие операции REST API может вызывать токен.
Предупреждение
Токены с областью authentication могут создавать новые токены с любой областью. Предоставьте этот доступ только токенам, которым необходимо управлять другими токенами.
Чтобы создать маркер области в пользовательском интерфейсе рабочей области, выберите тип маркера и добавьте области API при создании нового маркера. Если вы не назначаете области, токен сохраняет все разрешения создающей удостоверенности.
Полный список областей и связанных с ними операций API см. в областях API.
Создание личных маркеров доступа для субъектов-служб
Субъект-служба может самостоятельно создавать личные маркеры доступа.
Выполните следующую команду, чтобы создать маркер доступа:
databricks tokens create \ --lifetime-seconds <lifetime-seconds> \ -p <profile-name>Замените следующие значения:
-
<lifetime-seconds>: время существования токена в секундах, например 86400 в течение 1 дня. По умолчанию максимальное значение рабочей области (обычно 730 дней). -
<profile-name>: профиль конфигурации с информацией об аутентификации. По умолчанию —DEFAULT.
-
Скопируйте
token_valueиз ответа — это маркер доступа для вашего служебного субъекта. Безопасно сохраните маркер и не делитесь им. Если вы потеряете его, необходимо создать новый токен.
Если вы не можете создать или использовать маркеры, администратор рабочей области может отключить маркеры или не предоставить вам разрешение. Обратитесь к администратору рабочей области или следующему:
- Включение или отключение проверки подлинности личного маркера доступа для рабочей области
- Разрешения токена личного доступа
Аутентификация личного токена доступа
Чтобы настроить проверку подлинности маркера личного доступа Azure Databricks, задайте следующие связанные переменные среды, .databrickscfg поля, поля Terraform или Config поля:
- Узел Azure Databricks, указанный в качестве URL-адреса для каждой рабочей области Azure Databricks
, например . - Маркер личного доступа Azure Databricks для учетной записи пользователя Azure Databricks.
Чтобы выполнить аутентификацию с помощью личного токена доступа Azure Databricks, интегрируйте следующий код, основываясь на используемом инструменте или SDK:
Окружающая среда
Сведения об использовании переменных среды для определенного типа проверки подлинности Azure Databricks с помощью средства или пакета SDK см. в статье Authorize access to Azure Databricks resources или документации средства или пакета SDK. См. также переменные среды и поля для единой проверки подлинности и приоритет метода проверки подлинности.
Задайте следующие переменные среды:
-
DATABRICKS_HOSTзадайте для URL-адреса Azure Databricks per-workspace, напримерhttps://adb-1234567890123456.7.azuredatabricks.net. -
DATABRICKS_TOKEN, задайте строку токена.
Профиль
Создайте или определите профиль конфигурации Azure Databricks со следующими полями в вашем файле . При создании профиля замените заполнители соответствующими значениями. Сведения об использовании профиля с инструментом или пакетом SDK см. в разделе Authorize access to Azure Databricks resources или в документации по инструменту или пакету SDK. См. также переменные среды и поля для единой проверки подлинности и приоритет метода проверки подлинности.
Задайте следующие значения в файле .databrickscfg. В этом случае хостом является URL-адрес Azure Databricks для каждой рабочей области, например https://adb-1234567890123456.7.azuredatabricks.net:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
token = <token>
Вместо ручного задания значений можно использовать интерфейс командной строки Databricks, чтобы задать эти значения.
Примечание.
Следующая процедура использует Databricks CLI для создания профиля Azure Databricks configuration с именем DEFAULT. Если у вас уже есть DEFAULT профиль конфигурации, эта процедура перезапишет ваш существующий DEFAULT профиль конфигурации.
Чтобы убедиться в наличии профиля конфигурации и просмотреть его параметры, если он существует, используйте Databricks CLI для выполнения команды DEFAULT.
Чтобы создать профиль конфигурации с именем, отличным от DEFAULT, замените часть DEFAULT в --profile DEFAULT следующей команды databricks configure другим именем для профиля конфигурации.
Используйте интерфейс командной строки Databricks CLI для создания профиля конфигурации Azure Databricks с именем , использующего проверку подлинности с помощью персонального токена доступа Azure Databricks. Для этого выполните следующую команду:
databricks configure --profile DEFAULTДля запроса Databricks Host введите URL-адрес Azure Databricks per-workspace, например
https://adb-1234567890123456.7.azuredatabricks.net.В поле запроса Просональный маркер доступа введите Azure Databricks личный маркер доступа для рабочей области.
Интерфейс командной строки (CLI)
Выполните команду databricks configure для CLI Databricks. В подсказках введите следующие настройки:
- Узел Azure Databricks, указанный в качестве URL-адреса для каждой рабочей области Azure Databricks
, например . - Маркер личного доступа Azure Databricks для учетной записи пользователя 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 CLI, чтобы задать значения в файле .databrickscfg для операций уровня рабочей области Azure Databricks, как указано в разделе Профиль.
Следующая процедура создает профиль конфигурации Azure Databricks с именем DEFAULT, который перезаписывает любой существующий профиль DEFAULT. Чтобы проверить, существует ли DEFAULT профиль, выполните databricks auth env --profile DEFAULT. Если он существует, используйте другое имя профиля.
Выполните следующую команду, чтобы создать профиль конфигурации Azure Databricks с именем
DEFAULT, использующий аутентификацию личным токеном доступа.databricks configure \ --configure-cluster \ --profile DEFAULTДля запроса Databricks Host введите URL-адрес Azure Databricks per-workspace, например
https://adb-1234567890123456.7.azuredatabricks.net.В поле "Персональный токен доступа" введите персональный токен доступа для вашей рабочей области.
В списке доступных кластеров выберите целевой 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>: время существования токена в секундах. -
<scopes>: список областей, назначаемых маркеру. См. Персональные токены доступа с заданной областью.
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>,
"scopes": [
"sql",
"authentication"
]
}'
При успешном выполнении это приведёт к полезной нагрузке ответа, похожей на следующую:
{
"token_value": "<your-newly-issued-pat>",
"token_info": {
"token_id": "<token-id>",
"creation_time": <creation-timestamp>,
"expiry_time": <expiry-timestamp>,
"comment": "<comment>",
"scopes": ["authentication", "sql"],
"last_accessed_time": 0
}
}
Укажите новый токен, полученный из ответа, в заголовке 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)
Обновление разрешений личного токена доступа
Если в маркере с заданной областью отсутствует необходимая область для вызова API, запрос завершается с ошибкой, указывающей на недостающую область. Чтобы обновить области маркера, используйте конечную точку /api/2.0/token/<token_id>REST. Вызывающий токен должен иметь область действия authentication, которая позволяет управлять другими токенами. Используйте поле update_mask, чтобы указать, какие поля токена необходимо обновить.
curl -X PATCH https://<databricks-instance>/api/2.0/token/<token_id> \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
"token": {
"scopes": ["sql", "unity-catalog"]
},
"update_mask": "scopes"
}'
Изменения области могут занять до десяти минут для распространения.
Чтобы просмотреть все доступные области, используйте GET /api/2.0/token-scopes.