Autenticación unificada del cliente de Databricks
La autenticación unificada del cliente de Databricks centraliza la configuración y automatización de la autenticación en Azure Databricks. Permite configurar la autenticación de Databricks una vez y, a continuación, usar esa configuración en varias herramientas y SDK de Databricks sin cambios adicionales en la configuración de autenticación.
Herramientas y SDK participantes
Las herramientas y SDK de Databricks participantes incluyen:
- El CLI de Databricks
- El proveedor de Databricks Terraform
- Conexión de Databricks
- La extensión de Databricks para Visual Studio Code
- El SDK de Databricks para Python
- El SDK de Databricks para Java
- El SDK de Databricks para Go
Todas las herramientas y SDK participantes aceptan variables de entorno especiales, así como los perfiles de configuración de Azure Databricks para la autenticación. El proveedor Terraform de Databricks y los SDK de Databricks para Python, Java y Go también aceptan la configuración directa de los parámetros de autenticación dentro del código. Para obtener más información, consulte Herramientas de desarrollo para obtener la documentación de la herramienta o el SDK.
Métodos predeterminados para la autenticación unificada del cliente
Siempre que una herramienta o SDK necesite autenticarse en Azure Databricks, prueba los siguientes tipos de autenticación en el orden siguiente de forma predeterminada. Cuando la herramienta o el SDK se realizan correctamente con el tipo de autenticación que intenta, deja de intentar autenticarse con los tipos de autenticación restantes. Para forzar que un SDK se autentique con un tipo de autenticación específico, establezca el campo Tipo de autenticación de Databricks de la API Config
.
- Autenticación de token de acceso personal de Azure Databricks
- Autenticación del acceso a Azure Databricks con una entidad de servicio mediante OAuth (OAuth M2M)
- Autenticación del acceso a Azure Databricks con una cuenta de usuario mediante OAuth (OAuth M2M)
- Autenticación de identidades administradas de Azure
- Autenticación de la entidad de servicio de MS Entra
- Autenticación de la CLI de Azure
Para cada tipo de autenticación que intenta la herramienta o el SDK participantes, la herramienta o el SDK intenta buscar credenciales de autenticación en las siguientes ubicaciones, en el orden siguiente. Cuando la herramienta o el SDK se realizan correctamente en la búsqueda de credenciales de autenticación que se pueden usar, la herramienta o el SDK deja de intentar buscar credenciales de autenticación en las ubicaciones restantes.
- Campos de API relacionados con credenciales
Config
(para SDK). Para establecer camposConfig
, consulte la documentación de referencia del SDK. - Variables de entorno relacionadas con credenciales.
- Campos relacionados con credenciales en el perfil de configuración
DEFAULT
dentro del archivo.databrickscfg
. Para establecer campos de perfil de configuración, consulte (/dev-tools/auth/config-profiles.md). - Todas las credenciales de autenticación relacionadas almacenadas en caché por la CLI de Azure. Consulte Autenticación de la CLI de Azure.
Para proporcionar la máxima portabilidad para su código, Databricks recomienda crear un perfil de configuración personalizado dentro del archivo .databrickscfg
, agregar los siguientes campos obligatorios para el tipo de autenticación de destino de Databricks al perfil de configuración personalizado y luego establecer la variable de entorno DATABRICKS_CONFIG_PROFILE
en el nombre del perfil de configuración personalizado.
Variables de entorno y campos para la autenticación unificada del cliente
En las tablas siguientes se enumeran los nombres y descripciones de las variables de entorno y los campos admitidos para la autenticación unificada del cliente de Databricks. En las tablas siguientes:
- Variable de entorno, si procede, es el nombre de la variable de entorno.
- Campo
.databrickscfg
, si procede, es el nombre del campo dentro de un archivo de perfiles de configuración de Azure Databricks o la configuración de Databricks Terraform. Para establecer campos.databrickscfg
, consulta Perfiles de configuración de Azure Databricks. - El campo de Terraform, si procede, es el nombre del campo dentro de una configuración de Databricks Terraform. Para establecer campos de Databricks Terraform, consulte Autenticación en la documentación del proveedor de Databricks Terraform.
- Campo
Config
es el nombre del campo dentro delConfig
API para el SDK especificado.
Variables y campos de entorno de host, token y identificador de cuenta generales
Nombre común | Descripción | Variable de entorno | Campo .databrickscfg , campo de Terraform |
Campo Config |
---|---|---|---|---|
Host de Azure Databricks | (String) La dirección URL del host de Azure Databricks para el punto de conexión del área de trabajo de Azure Databricks o el punto de conexión de cuentas de Azure Databricks. | DATABRICKS_HOST |
host |
host (Python),setHost (Java),Host (Go) |
Token de Azure Databricks | (Cadena) El token de acceso personal de Azure Databricks o el token de Microsoft Entra ID. | DATABRICKS_TOKEN |
token |
token (Python),setToken (Java),Token (Go) |
Un id. de cuenta de Azure Databricks | (String) El id. de cuenta de Azure Databricks para el punto de conexión de la cuenta de Azure Databricks. Solo tiene efecto cuando el host de Azure Databricks también está establecido enhttps://accounts.azuredatabricks.net . |
DATABRICKS_ACCOUNT_ID |
account_id |
account_id (Python),setAccountID (Java),AccountID (Go) |
Campos y variables de entorno específicos de Azure
Nombre común | Descripción | Variable de entorno | Campo .databrickscfg , campo de Terraform |
Campo Config |
---|---|---|---|---|
Id. de cliente de Azure | (Cadena) El ID de la aplicación de la entidad principal del servicio Microsoft Entra ID. Use con la autenticación de identidades administradas de Microsoft Entra ID y la autenticación de entidad de servicio de Azure. | ARM_CLIENT_ID |
azure_client_id |
azure_client_id (Python),setAzureClientID (Java),AzureClientID (Go) |
Secreto de cliente de Azure | (Cadena) El secreto de cliente de la entidad de servicio Microsoft Entra ID. Autenticación de entidad de servicio de Microsoft Entra ID. | ARM_CLIENT_SECRET |
azure_client_secret |
azure_client_secret (Python),setAzureClientSecret (Java),AzureClientSecret (Go) |
Id. de cliente | (String) El identificador de cliente de la entidad de servicio administrada de Azure Databricks o la entidad de servicio administrada de Microsoft Entra ID. Use con la autenticación M2M de OAuth. | DATABRICKS_CLIENT_ID |
client_id |
client_id (Python),setClientId (Java),ClientId (Go) |
Secreto del cliente | (String) El secreto de cliente de la entidad de servicio administrada de Azure Databricks o la entidad de servicio administrada de Microsoft Entra ID. Use con la autenticación M2M de OAuth. | DATABRICKS_CLIENT_SECRET |
client_secret |
client_secret (Python),setClientSecret (Java),ClientSecret (Go) |
Entorno de Azure | (String) Tipo de entorno de Azure. Su valor predeterminado es PUBLIC . |
ARM_ENVIRONMENT |
azure_environment |
azure_environment (Python),setAzureEnvironment (Java),AzureEnvironment (Go) |
Id. de inquilino de Azure | (Cadena) El ID del inquilino de la entidad principal del servicio Microsoft Entra ID. | ARM_TENANT_ID |
azure_tenant_id |
azure_tenant_id (Python),setAzureTenantID (Java),AzureTenantID (Go) |
Uso de msi de Azure | (Boolean) True (verdadero) para usar el flujo de autenticación sin contraseña de Azure Managed Service Identity para las entidades de servicio. Requiere que también se establezca el id. de recurso de Azure. | ARM_USE_MSI |
azure_use_msi |
AzureUseMSI (Go) |
Identificador de recurso de Azure | (String) Identificador de Resource Manager de Azure para el área de trabajo de Azure Databricks. | DATABRICKS_AZURE_RESOURCE_ID |
azure_workspace_resource_id |
azure_workspace_resource_id (Python),setAzureResourceID (Java),AzureResourceID (Go) |
Campos y variables de entorno específicos de .databrickscfg
Use estas variables de entorno o campos para especificar valores no predeterminados para .databrickscfg
. Consulta también Perfiles de configuración de Azure Databricks.
Nombre común | Descripción | Variable de entorno | Campo de Terraform | Campo Config |
---|---|---|---|---|
Ruta de acceso del archivo .databrickscfg |
(String) Ruta de acceso no predeterminada al archivo .databrickscfg . |
DATABRICKS_CONFIG_FILE |
config_file |
config_file (Python),setConfigFile (Java),ConfigFile (Go) |
Perfil predeterminado .databrickscfg |
(String) Perfil con nombre predeterminado que se va a usar, distinto de DEFAULT . |
DATABRICKS_CONFIG_PROFILE |
profile |
profile (Python),setProfile (Java),Profile (Go) |
Campo de tipo de autenticación
Use esta variable de entorno o campo para forzar que un SDK use un tipo específico de autenticación de Databricks.
Nombre común | Descripción | Campo de Terraform | Campo Config |
---|---|---|---|
Tipo de autenticación de Databricks | (String) Cuando haya varios atributos de autenticación disponibles en el entorno, use el tipo de autenticación especificado por este argumento. | auth_type |
auth_type (Python),setAuthType (Java),AuthType (Go) |
Los valores de campo de tipo de autenticación de Databricks admitidos incluyen:
pat
: Autenticación de token de acceso personal de Azure Databricksoauth-m2m
: Autenticación del acceso a Azure Databricks con una entidad de servicio mediante OAuth (OAuth M2M)databricks-cli
: (/dev-tools/auth/oauth-u2m.md)azure-msi
: Autenticación de identidades administradas de Azureazure-client-secret
: Autenticación de la entidad de servicio de MS Entraazure-cli
: Autenticación de la CLI de Azure