Проверка подлинности субъект-службы Microsoft Entra.
Для проверки подлинности субъекта-службы идентификатора Microsoft Entra ID используются учетные данные субъекта-службы Microsoft Entra ID. Сведения о создании субъектов-служб и управлении ими для Azure Databricks см. в статье:
Примечание.
Databricks рекомендует использовать проверку подлинности OAuth на компьютере (M2M) в большинстве сценариев вместо проверки подлинности субъекта-службы идентификатора Microsoft Entra. Это связано с тем, что проверка подлинности M2M OAuth использует маркеры доступа OAuth Azure Databricks, более надежные при проверке подлинности только в Azure Databricks.
Проверку подлинности субъекта-службы Microsoft Entra ID следует использовать, только если необходимо провести проверку подлинности в Azure Databricks и других ресурсах Azure одновременно, для чего и необходимы маркеры Microsoft Entra ID.
Чтобы использовать проверку подлинности OAuth M2M вместо проверки подлинности субъекта-службы Идентификатора Майкрософт, пропустите эту статью и см. статью "Использование субъекта-службы для проверки подлинности с помощью Azure Databricks".
Субъекты-службы идентификатора Microsoft Entra отличаются от управляемых удостоверений для ресурсов Azure, которые Azure Databricks также поддерживает для проверки подлинности. Сведения об использовании управляемых удостоверений для ресурсов Azure вместо субъектов-служб идентификатора Microsoft Entra для проверки подлинности Azure Databricks см. в статье "Настройка и использование проверки подлинности управляемых удостоверений Azure для автоматизации Azure Databricks".
Чтобы настроить проверку подлинности субъекта-службы идентификатора Microsoft Entra с помощью Azure Databricks, необходимо задать следующие связанные переменные среды, поля, .databrickscfg
поля Terraform или Config
поля:
Узел Azure Databricks.
Для операций с учетной записью укажите
https://accounts.azuredatabricks.net
.Для операций с рабочей областью укажите URL-адрес рабочей области, например
https://adb-1234567890123456.7.azuredatabricks.net
.Если субъект-служба Идентификатора Microsoft Entra еще не добавлена в рабочую область, укажите вместо него идентификатор ресурса Azure. В этом случае субъект-служба Идентификатора Microsoft Entra должна иметь по крайней мере разрешения участника или владельца ресурса Azure.
Для операций с учетной записью идентификатор учетной записи Azure Databricks.
ИД ресурса Azure.
Идентификатор клиента субъекта-службы Microsoft Entra ID.
Идентификатор клиента субъекта-службы Microsoft Entra ID.
Секрет клиента субъекта-службы Идентификатора Microsoft Entra.
Чтобы выполнить проверку подлинности субъекта-службы Microsoft Entra ID с помощью Azure Databricks, интегрируйте следующие элементы в код на основе средства или пакета SDK для участников:
Среда
Сведения об использовании переменных среды для определенного типа проверки подлинности Azure Databricks с помощью инструмента или пакета SDK см. в документации по поддерживаемым типам проверки подлинности с помощью средства Azure Databricks или ПАКЕТА SDK. См. также переменные среды и поля для единой проверки подлинности клиента и порядок оценки по умолчанию для методов и учетных данных единой проверки подлинности клиента.
Для операций на уровне учетной записи задайте следующие переменные среды:
DATABRICKS_HOST
, установите значение URL-адреса консоли учетной записи Azure Databricks.https://accounts.azuredatabricks.net
DATABRICKS_ACCOUNT_ID
ARM_TENANT_ID
ARM_CLIENT_ID
ARM_CLIENT_SECRET
Для операций на уровне рабочей области задайте следующие переменные среды:
DATABRICKS_HOST
, установите значение URL-адреса azure Databricks для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
.ARM_TENANT_ID
ARM_CLIENT_ID
ARM_CLIENT_SECRET
Для операций на уровне рабочей области, если субъект-служба Microsoft Entra ID еще не добавлена в рабочую область, укажите DATABRICKS_AZURE_RESOURCE_ID
вместе с идентификатором ресурса Azure для рабочей области Azure Databricks вместо HOST
URL-адреса рабочей области. В этом случае субъект-служба идентификатора Microsoft Entra ID должна иметь по крайней мере разрешения участника или владельца ресурса Azure для рабочей области Azure Databricks.
Профиль
Создайте или определите профиль конфигурации Azure Databricks со следующими полями в .databrickscfg
файле. При создании профиля замените заполнители соответствующими значениями. Сведения об использовании профиля с инструментом или пакетом SDK см. в статье "Поддерживаемые типы проверки подлинности" с помощью инструмента Azure Databricks или пакета SDK или документации по средству или пакету SDK . См. также переменные среды и поля для единой проверки подлинности клиента и порядок оценки по умолчанию для методов и учетных данных единой проверки подлинности клиента.
Для операций на уровне учетной записи задайте следующие значения в .databrickscfg
файле. В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
[<some-unique-configuration-profile-name>]
host = <account-console-url>
account_id = <account-id>
azure_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
Для операций на уровне рабочей области задайте следующие значения в .databrickscfg
файле. В этом случае узел является URL-адресом Azure Databricks для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
azure_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
Для операций на уровне рабочей области, если субъект-служба Microsoft Entra ID еще не добавлена в рабочую область, укажите azure_workspace_resource_id
вместе с идентификатором ресурса Azure для рабочей области Azure Databricks вместо host
URL-адреса рабочей области. В этом случае субъект-служба идентификатора Microsoft Entra ID должна иметь по крайней мере разрешения участника или владельца ресурса Azure для рабочей области Azure Databricks.
CLI
Для интерфейса командной строки Databricks выполните одно из следующих действий:
- Задайте переменные среды, указанные в разделе "Среда".
- Задайте значения в файле, как указано в разделе "Профиль" этой
.databrickscfg
статьи.
Переменные среды всегда имеют приоритет над значениями в .databrickscfg
файле.
См. также проверку подлинности субъекта-службы идентификатора Microsoft Entra.
Связь
Примечание.
Проверка подлинности субъекта-службы идентификатора Microsoft Entra поддерживается в следующих версиях Databricks Connect:
- Для Python Databricks Connect для Databricks Runtime 13.1 и более поздних версий.
- Для Scala Databricks Connect для Databricks Runtime 13.3 LTS и более поздних версий.
Для Databricks Connect можно выполнить одно из следующих действий:
- Задайте значения в
.databrickscfg
файле для операций на уровне рабочей области Azure Databricks, как указано в разделе "Профиль". Также задайтеcluster_id
переменную среды в профиле URL-адрес рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
. - Задайте переменные среды для операций на уровне рабочей области Azure Databricks, как указано в разделе "Среда". Кроме того, задайте
DATABRICKS_CLUSTER_ID
переменную среды в URL-адресе для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
.
Значения в .databrickscfg
файле всегда имеют приоритет над переменными среды.
Чтобы инициализировать клиент Databricks Connect с этими переменными или значениями среды в .databrickscfg
файле, см. одно из следующих элементов:
- Сведения о Python см. в разделе "Настройка свойств подключения для Python".
- Сведения о Scala см. в разделе "Настройка свойств подключения для Scala".
VS Code
Для расширения Databricks для Visual Studio Code сделайте следующее:
- Задайте значения в
.databrickscfg
файле для операций на уровне рабочей области Azure Databricks, как указано в разделе "Профиль". - В области конфигурации расширения Databricks для Visual Studio Code нажмите кнопку "Настройка Databricks".
- В палитре команд для узла Databricks введите URL-адрес рабочей области, например
https://adb-1234567890123456.7.azuredatabricks.net
, и нажмите клавишуEnter
. - В палитре команд выберите имя целевого профиля в списке URL-адреса.
Дополнительные сведения см. в разделе "Настройка проверки подлинности" для расширения Databricks для VS Code.
Terraform
Для операций на уровне учетной записи для проверки подлинности по умолчанию:
provider "databricks" {
alias = "accounts"
}
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например HashiCorp Vault. См. также поставщик хранилища. В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
provider "databricks" {
alias = "accounts"
host = <retrieve-account-console-url>
account_id = <retrieve-account-id>
azure_tenant_id = <retrieve-azure-tenant-id>
azure_client_id = <retrieve-azure-client-id>
azure_client_secret = <retrieve-azure-client-secret>
}
Для операций на уровне рабочей области для проверки подлинности по умолчанию:
provider "databricks" {
alias = "workspace"
}
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например HashiCorp Vault. См. также поставщик хранилища. В этом случае узел является URL-адресом Azure Databricks для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
:
provider "databricks" {
alias = "workspace"
host = <retrieve-workspace-url>
azure_tenant_id = <retrieve-azure-tenant-id>
azure_client_id = <retrieve-azure-client-id>
azure_client_secret = <retrieve-azure-client-secret>
}
Для операций на уровне рабочей области, если субъект-служба Microsoft Entra ID еще не добавлена в рабочую область, укажите azure_workspace_resource_id
вместе с идентификатором ресурса Azure для рабочей области Azure Databricks вместо host
URL-адреса рабочей области. В этом случае субъект-служба идентификатора Microsoft Entra ID должна иметь по крайней мере разрешения участника или владельца ресурса Azure для рабочей области Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью поставщика Databricks Terraform см. в разделе "Проверка подлинности".
Python
Для операций на уровне учетной записи для проверки подлинности по умолчанию:
from databricks.sdk import AccountClient
a = AccountClient()
# ...
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например Azure KeyVault). В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
from databricks.sdk import AccountClient
a = AccountClient(
host = retrieve_account_console_url(),
account_id = retrieve_account_id(),
azure_tenant_id = retrieve_azure_tenant_id(),
azure_client_id = retrieve_azure_client_id(),
azure_client_secret = retrieve_azure_client_secret()
)
# ...
Для операций на уровне рабочей области для проверки подлинности по умолчанию:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например Azure KeyVault). В этом случае узел является URL-адресом Azure Databricks для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient(
host = retrieve_workspace_url(),
azure_tenant_id = retrieve_azure_tenant_id(),
azure_client_id = retrieve_azure_client_id(),
azure_client_secret = retrieve_azure_client_secret()
)
# ...
Для операций на уровне рабочей области, если субъект-служба Microsoft Entra ID еще не добавлена в рабочую область, укажите azure_workspace_resource_id
вместе с идентификатором ресурса Azure для рабочей области Azure Databricks вместо host
URL-адреса рабочей области. В этом случае субъект-служба идентификатора Microsoft Entra ID должна иметь по крайней мере разрешения участника или владельца ресурса Azure для рабочей области Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью средств Databricks и пакетов SDK, использующих Python и реализующих единую проверку подлинности клиента Databricks, см. в следующем разделе:
- Настройка клиента Databricks Connect для Python
- Настройка проверки подлинности для расширения Databricks для VS Code
- Проверка подлинности пакета SDK Databricks для Python с помощью учетной записи Или рабочей области Azure Databricks
Java
Для операций на уровне учетной записи для проверки подлинности по умолчанию:
import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например Azure KeyVault). В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
import com.databricks.sdk.AccountClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveAccountConsoleUrl())
.setAccountId(retrieveAccountId())
.setAzureTenantId(retrieveAzureTenantId())
.setAzureClientId(retrieveAzureClientId())
.setAzureClientSecret(retrieveAzureClientSecret())
AccountClient a = new AccountClient(cfg);
// ...
Для операций на уровне рабочей области для проверки подлинности по умолчанию:
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например Azure KeyVault). В этом случае узел является URL-адресом Azure Databricks для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
:
import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveWorkspaceUrl())
.setAzureTenantId(retrieveAzureTenantId())
.setAzureClientId(retrieveAzureClientId())
.setAzureClientSecret(retrieveAzureClientSecret())
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
Для операций на уровне рабочей области, если субъект-служба Microsoft Entra ID еще не добавлена в рабочую область, укажите setAzureWorkspaceResourceId
вместе с идентификатором ресурса Azure для рабочей области Azure Databricks вместо setHost
URL-адреса рабочей области. В этом случае субъект-служба идентификатора Microsoft Entra ID должна иметь по крайней мере разрешения участника или владельца ресурса Azure для рабочей области Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью средств Databricks и пакетов SDK, использующих Java и реализующих единую проверку подлинности клиента Databricks, см. в следующем разделе:
- Настройка клиента Databricks Connect для Scala (клиент Databricks Connect для Scala использует включенный пакет SDK Databricks для Java для проверки подлинности)
- Проверка подлинности пакета SDK Databricks для Java с помощью учетной записи Или рабочей области Azure Databricks
Go
Для операций на уровне учетной записи для проверки подлинности по умолчанию:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например Azure KeyVault). В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
Host: retrieveAccountConsoleUrl(),
AccountId: retrieveAccountId(),
AzureTenantId: retrieveAzureTenantId(),
AzureClientId: retrieveAzureClientId(),
AzureClientSecret: retrieveAzureClientSecret(),
}))
// ...
Для операций на уровне рабочей области для проверки подлинности по умолчанию:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
Для прямой конфигурации (замените retrieve
заполнители собственной реализацией, чтобы получить значения из консоли или другого хранилища конфигурации, например Azure KeyVault). В этом случае узел является URL-адресом Azure Databricks для каждой рабочей области, напримерhttps://adb-1234567890123456.7.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
Host: retrieveWorkspaceUrl(),
AzureTenantId: retrieveAzureTenantId(),
AzureClientId: retrieveAzureClientId(),
AzureClientSecret: retrieveAzureClientSecret(),
}))
// ...
Для операций на уровне рабочей области, если субъект-служба Microsoft Entra ID еще не добавлена в рабочую область, укажите AzureWorkspaceResourceId
вместе с идентификатором ресурса Azure для рабочей области Azure Databricks вместо Host
URL-адреса рабочей области. В этом случае субъект-служба идентификатора Microsoft Entra ID должна иметь по крайней мере разрешения участника или владельца ресурса Azure для рабочей области Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью средств Databricks и пакетов SDK, использующих Go и реализующих единую проверку подлинности клиента Databricks, см. в статье "Проверка подлинности пакета SDK Databricks для Go" с учетной записью Azure Databricks или рабочей областью.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по