Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Для проверки подлинности субъекта-службы Microsoft Entra используются учетные данные субъекта-службы Microsoft Entra. Чтобы создать и управлять учетными записями службы для Azure Databricks, см.
Примечание
Databricks рекомендует использовать проверку подлинности OAuth на компьютере (M2M) в большинстве сценариев. OAuth M2M использует маркеры доступа OAuth, которые являются более надежными при проверке подлинности только с помощью Azure Databricks. Используйте аутентификацию служебного субъекта Microsoft Entra только в том случае, если необходимо одновременно выполнить аутентификацию в Azure Databricks и других ресурсах Azure.
Дополнительные сведения см. в статье Об использовании управляемых удостоверений Azure с Azure Databricks и аутентификации с помощью Azure DevOps в Azure Databricks.
Чтобы настроить проверку подлинности учетной записи Microsoft Entra с помощью Azure Databricks, необходимо задать следующие связанные переменные среды, поля, .databrickscfg поля Terraform или Config поля:
Узел Azure Databricks.
- Для операций с учетной записью укажите
https://accounts.azuredatabricks.net. - Для операций с рабочей областью Databricks рекомендует указать URL-адрес рабочей области, например
https://adb-1234567890123456.7.azuredatabricks.net, и явно назначить рабочей области служебный объект Microsoft Entra. Кроме того, укажите идентификатор ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
- Для операций с учетной записью укажите
Для операций с учетной записью идентификатор учетной записи Azure Databricks account ID.
ИД ресурса Azure.
Идентификатор клиента субъекта-службы Microsoft Entra.
Идентификатор клиента принципала службы Microsoft Entra.
Секрет клиента субъекта-службы Microsoft Entra.
Чтобы выполнить аутентификацию учетной записи службы Microsoft Entra с помощью Azure Databricks, интегрируйте следующее в код на основе выбранного инструмента или пакета SDK.
Переменные среды
Сведения об использовании переменных среды для определенного типа проверки подлинности Azure Databricks с помощью инструмента или пакета SDK см. в статье "Авторизация доступа к ресурсам Azure Databricks " или документации по средству или пакету SDK. См. также переменные среды и поля для единой проверки подлинности и приоритет метода проверки подлинности.
Для операций на уровне учетной записи задайте следующие переменные среды:
-
DATABRICKS_HOST, укажите значение URL-адреса консоли вашей учетной записи Azure Databricks,https://accounts.azuredatabricks.net. DATABRICKS_ACCOUNT_IDARM_TENANT_IDARM_CLIENT_IDARM_CLIENT_SECRET
Для операций на уровне рабочей областизадайте следующие переменные среды:
-
DATABRICKS_HOST, задайте для URL-адреса вашей рабочей области в Azure Databricks значение, например, . ARM_TENANT_IDARM_CLIENT_IDARM_CLIENT_SECRET
Databricks рекомендует использовать DATABRICKS_HOST и явно назначать учетную запись службы Microsoft Entra пространству работы. В качестве альтернативы используйте DATABRICKS_AZURE_RESOURCE_ID с идентификатором ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
Профили конфигурации
Создайте или определите профиль конфигурации Azure Databricks со следующими полями в вашем .databrickscfg файле. Если вы создаёте профиль, замените заполнители соответствующими значениями. Сведения об использовании профиля с инструментом или пакетом SDK см. в статье "Авторизация доступа к ресурсам Azure Databricks " или документации по средству или пакету 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>
Databricks рекомендует использовать host и явно назначать учетную запись службы Microsoft Entra пространству работы. В качестве альтернативы используйте azure_workspace_resource_id с идентификатором ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
Databricks CLI (интерфейс командной строки)
Для интерфейса командной строки Databricks выполните одно из следующих действий:
- Задайте переменные среды, указанные на вкладке "Среда ".
- Задайте значения в
.databrickscfgфайле, как указано на вкладке "Профиль ".
Переменные среды всегда имеют приоритет над значениями в вашем файле .databrickscfg.
См. также Microsoft Entra ID service principal authentication.
Сервис Databricks Connect
Примечание
Аутентификация делегированного пользователя Microsoft Entra поддерживается в следующих версиях Databricks Connect:
- Для Python — Databricks Connect для Databricks Runtime версии 13.1 и выше.
- Для Scala, Databricks Connect для Databricks Runtime 13.3 LTS и выше.
Для Databricks Connect можно выполнить следующие действия:
-
Используйте профиль конфигурации: Задайте значения уровня рабочей области в
.databrickscfgфайле, как описано на вкладке "Профиль ". Также задайте URL-адрес экземпляраcluster_idрабочей области. -
Используйте переменные среды: Задайте те же значения, что и на вкладке "Среда ". Также задайте URL-адрес экземпляра
DATABRICKS_CLUSTER_IDрабочей области.
Значения, которые .databrickscfg имеют приоритет над переменными среды.
Сведения об инициализации Databricks Connect с этими параметрами см. в разделе "Конфигурация вычислений для Databricks Connect".
Расширение Visual Studio Code
Для расширения Databricks для Visual Studio Code сделайте следующее:
- Задайте значения в
.databrickscfgфайле для операций уровня рабочей области Azure Databricks, как указано на вкладке "Профиль ". - В области конфигурации расширения Databricks для Visual Studio Code нажмите кнопку "Настройка Databricks".
- В Палитре команд для Databricks Host введите ваш URL-адрес рабочего пространства, например
https://adb-1234567890123456.7.azuredatabricks.net, а затем нажмитеEnter. - В палитре команд выберите имя целевого профиля в списке URL-адреса.
Дополнительные сведения см. в разделе Настройка авторизации для расширения Databricks для Visual Studio Code.
Terraform
Для операций на уровне аккаунта, для аутентификации по умолчанию:
provider "databricks" {
alias = "accounts"
}
Для прямой настройки замените заполнители значениями из консоли или другого хранилища конфигурации, например HashiCorp Vault. См. также поставщик хранилища. В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
provider "databricks" {
alias = "accounts"
host = <your-account-console-url>
account_id = <your-account-id>
azure_tenant_id = <your-azure-tenant-id>
azure_client_id = <your-azure-client-id>
azure_client_secret = <your-azure-client-secret>
}
Для операций на уровне рабочей области, для аутентификации по умолчанию:
provider "databricks" {
alias = "workspace"
}
Для прямой настройки замените заполнители значениями из консоли или другого хранилища конфигурации, например HashiCorp Vault. См. также поставщик хранилища. В данном случае, хостом является URL-адрес рабочей области Azure Databricks, например https://adb-1234567890123456.7.azuredatabricks.net:
provider "databricks" {
alias = "workspace"
host = <your-workspace-url>
azure_tenant_id = <your-azure-tenant-id>
azure_client_id = <your-azure-client-id>
azure_client_secret = <your-azure-client-secret>
}
Databricks рекомендует использовать host и явно назначать учетную запись службы Microsoft Entra пространству работы. В качестве альтернативы используйте azure_workspace_resource_id с идентификатором ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
Для получения дополнительной информации об аутентификации с провайдером Databricks Terraform, смотрите Аутентификация.
Пакет SDK Databricks для Python
Для операций на уровне аккаунта, для аутентификации по умолчанию:
from databricks.sdk import AccountClient
a = AccountClient()
# ...
Для прямой настройки замените вызовы функции кодом, который получает значения из консоли или другого хранилища конфигурации, например Azure KeyVault. В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
from databricks.sdk import AccountClient
a = AccountClient(
host = get_account_console_url(),
account_id = get_account_id(),
azure_tenant_id = get_azure_tenant_id(),
azure_client_id = get_azure_client_id(),
azure_client_secret = get_azure_client_secret()
)
# ...
Для операций на уровне рабочей области, для аутентификации по умолчанию:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
Для прямой настройки замените вызовы функции кодом, который получает значения из консоли или другого хранилища конфигурации, например Azure KeyVault. В данном случае, хостом является URL-адрес рабочей области Azure Databricks, например https://adb-1234567890123456.7.azuredatabricks.net:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient(
host = get_workspace_url(),
azure_tenant_id = get_azure_tenant_id(),
azure_client_id = get_azure_client_id(),
azure_client_secret = get_azure_client_secret()
)
# ...
Databricks рекомендует использовать host и явно назначать учетную запись службы Microsoft Entra пространству работы. В качестве альтернативы используйте azure_workspace_resource_id с идентификатором ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью средств Databricks и пакетов SDK, использующих Python и реализующих единую проверку подлинности Databricks, см. в следующем разделе:
- настройка клиента Databricks Connect для Python
- Настройка авторизации расширения Databricks для Visual Studio Code
- Аутентифицируйте SDK Databricks для Python с вашей учетной записью или рабочей областью Azure Databricks
Пакет SDK Databricks для Java
Для операций на уровне аккаунта, для аутентификации по умолчанию:
import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...
Для прямой настройки замените вызовы функции кодом, который получает значения из консоли или другого хранилища конфигурации, например 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(getAccountConsoleUrl())
.setAccountId(getAccountId())
.setAzureTenantId(getAzureTenantId())
.setAzureClientId(getAzureClientId())
.setAzureClientSecret(getAzureClientSecret())
AccountClient a = new AccountClient(cfg);
// ...
Для операций на уровне рабочей области, для аутентификации по умолчанию:
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
Для прямой настройки замените вызовы функции кодом, который получает значения из консоли или другого хранилища конфигурации, например 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(getWorkspaceUrl())
.setAzureTenantId(getAzureTenantId())
.setAzureClientId(getAzureClientId())
.setAzureClientSecret(getAzureClientSecret())
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
Databricks рекомендует использовать setHost и явно назначать учетную запись службы Microsoft Entra пространству работы. В качестве альтернативы используйте setAzureWorkspaceResourceId с идентификатором ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью средств Databricks и пакетов SDK, использующих Java и реализующих унифицированную проверку подлинности Databricks, см. в следующем разделе:
- настройка клиента Databricks Connect для Scala (клиент Databricks Connect для Scala использует включенный пакет SDK Databricks для Java для проверки подлинности)
- Аутентифицируйте Databricks SDK для Java с вашей учетной записью или рабочим пространством Azure Databricks
Пакет SDK Databricks для Go
Для операций на уровне аккаунта, для аутентификации по умолчанию:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...
Для прямой настройки замените вызовы функции кодом, который получает значения из консоли или другого хранилища конфигурации, например Azure KeyVault. В этом случае URL-адрес консоли учетной записи Azure Databricks:https://accounts.azuredatabricks.net
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
Host: getAccountConsoleUrl(),
AccountId: getAccountId(),
AzureTenantId: getAzureTenantId(),
AzureClientId: getAzureClientId(),
AzureClientSecret: getAzureClientSecret(),
}))
// ...
Для операций на уровне рабочей области, для аутентификации по умолчанию:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
Для прямой настройки замените вызовы функции кодом, который получает значения из консоли или другого хранилища конфигурации, например 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: getWorkspaceUrl(),
AzureTenantId: getAzureTenantId(),
AzureClientId: getAzureClientId(),
AzureClientSecret: getAzureClientSecret(),
}))
// ...
Databricks рекомендует использовать Host и явно назначать учетную запись службы Microsoft Entra пространству работы. В качестве альтернативы используйте AzureWorkspaceResourceId с идентификатором ресурса Azure. Для этого подхода требуются разрешения участника или владельца ресурса Azure или настраиваемая роль с определенными разрешениями Azure Databricks.
Дополнительные сведения о проверке подлинности с помощью средств Databricks и пакетов SDK, использующих Go и реализующих единую проверку подлинности клиента Databricks, см. в статье "Проверка подлинности пакета SDK Databricks для Go" с учетной записью Azure Databricks или рабочей областью.