此参考列出了 Databricks 统一身份验证的环境变量和配置字段。 它们适用于 Python、Java 和 Go 的 Databricks CLI、Terraform 提供程序和 SDK。
使用此参考设置身份验证或排查身份验证问题。 每个条目包括:
- 环境变量: 在 shell 环境中设置此值。
- 
              
              .databrickscfg字段: 在 配置文件中使用此字段。
- Terraform 字段: 在 Terraform 提供程序块中配置此项。 请参阅 Databricks Terraform 提供程序文档中的 身份验证 。
- 字段: - 以编程方式 - 配置 SDK 时使用应用程序接口。 
常规配置字段
这些变量配置 Databricks 的基本连接和计算设置。
| 公用名 | Description | 环境变量 | .databrickscfg字段、Terraform 字段 | Config字段 | 
|---|---|---|---|---|
| Azure Databricks 主机 | (字符串)Azure Databricks 工作区终结点或 Azure Databricks 帐户终结点的 Azure Databricks 主机 URL。 | DATABRICKS_HOST | host | host(Python)setHost(Java)Host(Go) | 
| Azure Databricks 令牌 | (字符串)Azure Databricks 个人访问令牌或 Microsoft Entra ID 令牌。 | DATABRICKS_TOKEN | token | token(Python)setToken(Java)Token(Go) | 
| Azure Databricks 帐户 ID | (字符串)Azure Databricks 帐户终结点的 Azure Databricks 帐户 ID。 只有在 Azure Databricks 主机也设置为 https://accounts.databricks.azure.cn时才有效。 | DATABRICKS_ACCOUNT_ID | account_id | account_id(Python)setAccountID(Java)AccountID(Go) | 
| 群集 ID | (字符串)要使用的群集的 ID | DATABRICKS_CLUSTER_ID | cluster_id | cluster_id | 
| 公用名 | Description | 环境变量 | .databrickscfg字段、Terraform 字段 | Config字段 | 
|---|---|---|---|---|
| Azure 客户端 ID | (字符串)Microsoft Entra ID 服务主体的应用程序 ID。 与 Azure 托管标识身份验证和 Microsoft Entra ID 服务主体身份验证配合使用。 | ARM_CLIENT_ID | azure_client_id | azure_client_id(Python)setAzureClientID(Java)AzureClientID(Go) | 
| Azure 客户端机密 | (字符串)Microsoft Entra ID 服务主体的客户端密码。 与 Microsoft Entra ID 服务主体身份验证配合使用。 | ARM_CLIENT_SECRET | azure_client_secret | azure_client_secret(Python)setAzureClientSecret(Java)AzureClientSecret(Go) | 
| 客户 ID | (字符串)Azure Databricks 托管服务主体或 Microsoft Entra ID 托管服务主体的客户端 ID。 与 OAuth M2M 身份验证一起使用。 | DATABRICKS_CLIENT_ID | client_id | client_id(Python)setClientId(Java)ClientId(Go) | 
| 客户密钥 | (字符串)Azure Databricks 托管服务主体或 Microsoft Entra ID 托管服务主体的客户端密码。 与 OAuth M2M 身份验证一起使用。 | DATABRICKS_CLIENT_SECRET | client_secret | client_secret(Python)setClientSecret(Java)ClientSecret(Go) | 
| Azure 环境 | (字符串)Azure 环境类型。 默认为 PUBLIC。 | ARM_ENVIRONMENT | azure_environment | azure_environment(Python)setAzureEnvironment(Java)AzureEnvironment(Go) | 
| Azure 租户 ID | (字符串)Microsoft Entra ID 服务主体的租户 ID。 | ARM_TENANT_ID | azure_tenant_id | azure_tenant_id(Python)setAzureTenantID(Java)AzureTenantID(Go) | 
| Azure 使用 MSI | (布尔值)True 表示对服务主体使用 Azure 托管服务标识无密码身份验证流。 还需要设置 Azure 资源 ID。 | ARM_USE_MSI | azure_use_msi | AzureUseMSI(Go) | 
| Azure 资源 ID | (字符串)Azure Databricks 工作区的 Azure 资源管理器 ID。 | DATABRICKS_AZURE_RESOURCE_ID | azure_workspace_resource_id | azure_workspace_resource_id(Python)setAzureResourceID(Java)AzureResourceID(Go) | 
特定于 .databrickscfg 的字段
使用这些环境变量或字段为 .databrickscfg 指定非默认设置。 另请参阅 Azure Databricks 配置文件。
| 公用名 | Description | 环境变量 | Terraform 字段 | Config字段 | 
|---|---|---|---|---|
| .databrickscfg文件路径 | (字符串)文件的非默认路径 .databrickscfg。 | DATABRICKS_CONFIG_FILE | config_file | config_file(Python)setConfigFile(Java)ConfigFile(Go) | 
| .databrickscfg默认配置文件 | (字符串)要使用的默认命名配置文件,但不是 DEFAULT。 | DATABRICKS_CONFIG_PROFILE | profile | profile(Python)setProfile(Java)Profile(Go) | 
身份验证字段
使用这些环境变量或字段强制实施特定类型的 Databricks 身份验证。
| 公用名 | Description | 环境变量 | Terraform 字段 | Config字段 | 
|---|---|---|---|---|
| Databricks 身份验证类型 | (字符串)当环境中有多个身份验证属性可用时,将使用此参数指定的身份验证类型。 请参阅 支持的身份验证类型。 | DATABRICKS_AUTH_TYPE | auth_type | auth_type(Python)setAuthType(Java)AuthType(Go) | 
| OIDC 令牌环境变量 | (字符串)包含 IdP 颁发的 OIDC 令牌的环境变量的名称。 与身份验证类型一起使用 env-oidc。 默认为DATABRICKS_OIDC_TOKEN。 | DATABRICKS_OIDC_TOKEN_ENV | oidc_token_env | oidc_token_env(Python)setOIDCTokenEnv(Java)OIDCTokenEnv(Go) | 
| OIDC 令牌文件路径 | (字符串)包含 IdP 颁发的 OIDC 令牌的本地文件的路径。 与身份验证类型一起使用 file-oidc。 | DATABRICKS_OIDC_TOKEN_FILEPATH | oidc_token_filepath | oidc_token_filepath(Python)setOIDCTokenFilepath(Java)OIDCTokenFilepath(Go) | 
支持的身份验证类型
支持的 Databricks 身份验证类型字段值包括:
- oauth-m2m: 对于借助 OAuth 2.0 通过 Databricks 服务主体进行的机器到机器(M2M)身份验证。 请参阅 使用 OAuth 授权服务主体访问 Azure Databricks。
- pat: 使用 Databricks 个人访问令牌进行身份验证。 请参阅 使用 Azure Databricks 个人访问令牌(旧版)进行身份验证。
- databricks-cli: 使用 OAuth 2.0 通过 Databricks CLI 进行交互式登录。 请参阅 授权用户使用 OAuth 访问 Azure Databricks。
- oidc-token: 对于与标识提供者(IdP)的令牌联合,Databricks 将 IdP 颁发的 OIDC 令牌交换为 Databricks OAuth 令牌。 请参阅 使用标识提供者令牌进行身份验证。
- 联合身份验证中,当您的 IdP 令牌存储在环境变量( - env-oidc)中时。 请参阅 使用标识提供者令牌进行身份验证。
- file-oidc: 当 IdP 令牌存储在本地文件(- DATABRICKS_OIDC_TOKEN_FILEPATH)中时的联合身份验证。 请参阅 使用标识提供者令牌进行身份验证。
- github-oidc: 使用 OIDC 令牌进行 GitHub Actions 的联合身份验证。 请参阅 为 GitHub Actions 启用工作负载身份联合。
- azure-msi: 使用 Azure 托管服务标识进行身份验证(MSI)。 请参阅 使用 Azure 托管标识进行身份验证。
- azure-client-secret: 使用 Azure 服务主体和客户端机密进行身份验证。 请参阅 使用 MS Entra 服务主体进行身份验证。