Databricks 统一身份验证

Azure Databricks 统一身份验证提供了在 OAuth 授权过程中配置和自动执行身份验证的一致方式。 定义身份验证一次,并在受支持的 Azure Databricks 工具和 SDK 之间重复使用相同的配置。 这可以避免为每个工具维护单独的凭据,并确保跨环境保持一致的身份验证行为。

参与工具和 SDK

相关的 Databricks 工具和 SDK 包括:

所有工具和 SDK 都支持通过环境变量和 Azure Databricks 配置文件进行身份验证。 Databricks Terraform 提供程序和 Python、Java 和 Go SDK 还允许直接在代码中配置身份验证。 有关详细信息,请参阅工具或 SDK 的文档

身份验证方法优先级

本部分介绍工具和 SDK 如何确定身份验证方法的优先级及其查找凭据的位置。

默认身份验证顺序

工具和 SDK 按此顺序尝试身份验证方法,并在第一次成功后停止:

  1. 个人访问令牌(旧版)

  2. OAuth 计算机到计算机 (M2M)

  3. 用户与机器之间的OAuth(U2M)交互

  4. Azure 托管标识

  5. Azure 服务主体

  6. Azure CLI

注释

若要强制 SDK 使用特定方法,请在 API 中 Config 设置 Databricks 身份验证类型字段。

凭据查找顺序

对于每个身份验证方法,工具和 SDK 按以下顺序搜索凭据:

  1. SDK 配置字段: 代码中的直接配置(仅 SDK)

  2. 环境变量: 特定于平台的变量

  3. 配置文件:.databrickscfg 文件 DEFAULT 配置文件

  4. Azure CLI 缓存凭据: 请参阅 Azure CLI 身份验证

最佳做法

若要跨环境实现最大可移植性,请执行以下作:

  1. 文件中创建自定义.databrickscfg

  2. 为所选的身份验证类型添加必填字段

  3. DATABRICKS_CONFIG_PROFILE 环境变量设置为用户配置文件名称

有关支持的环境变量和配置字段的完整列表,请参阅 用于统一身份验证的环境变量和字段