Autenticación de token de acceso personal de Azure Databricks
Los tokens de acceso personal (PAT) de Azure Databricks se usan para autenticarse solo en recursos y API de nivel de área de trabajo de Azure Databricks. Muchos de los mecanismos de almacenamiento para credenciales e información relacionada, como variables de entorno y perfiles de configuración de Azure Databricks, dan soporte técnico a los tokens de acceso personal de Azure Databricks. Aunque los usuarios pueden tener varios tokens de acceso personal en un área de trabajo de Azure Databricks, cada token de acceso personal solo funciona para un único área de trabajo de Azure Databricks. El número de tokens de acceso personal por usuario está limitado a 600 por área de trabajo.
Databricks revoca automáticamente los tokens de acceso personal que no se han usado en 90 o más días.
Importante
Databricks recomienda usar OAuth en lugar de PAT para la autenticación y autorización del cliente con la cuenta de usuario debido a la seguridad mejorada que tiene OAuth. Con el fin de aprender a usar OAuth para realizar la autenticación de cliente con una cuenta de usuario de Databricks, consulte Autenticación del acceso a Azure Databricks con una cuenta de usuario mediante OAuth (OAuth U2M) (para la autenticación con cuentas de usuario).
La autenticación básica (no basada en tokens) mediante un nombre de usuario y una contraseña de Azure Databricks llegaron al final de la vida útil el 10 de julio de 2024.
Para automatizar Azure Databricks funcionalidad de nivel de cuenta, no puede usar tokens de acceso personal de Azure Databricks. En su lugar, debe usar los tokens de Microsoft Entra ID de los administradores de cuentas de Azure Databricks. Los administradores de cuentas de Azure Databricks pueden ser usuarios o entidades de servicio. Para más información, consulte:
-
Consulte también:
Tokens de acceso personal de Azure Databricks para los usuarios del área de trabajo
Para crear un token de acceso personal de Azure Databricks para el usuario del área de trabajo de Azure Databricks, haga lo siguiente:
- En el área de trabajo de Azure Databricks, haga clic en el nombre de usuario de Azure Databricks en la barra superior y, a continuación, seleccione Configuración en la lista desplegable.
- Haga clic en Desarrollador.
- Junto a Tokens de acceso, haga clic en Administrar.
- Haga clic en Generate new token (Generar nuevo token).
- (Opcional) Escriba un comentario que le ayude a identificar este token en el futuro y cambie la duración predeterminada del token de 90 días. Para crear un token sin duración (no recomendado), deje el cuadro Duración (días) vacío (en blanco).
- Haga clic en Generar.
- Copie el token mostrado en una ubicación segura y, a continuación, haga clic en Listo.
Nota:
Asegúrese de guardar el token copiado en una ubicación segura. No comparta el token copiado con otros usuarios. Si pierde el token copiado, no podrá volver a generar ese mismo token. Debe repetir el procedimiento para crear un nuevo token. Si pierde el token copiado o cree que el token se ha visto comprometido, Databricks recomienda eliminar inmediatamente ese token del área de trabajo haciendo clic en el icono de papelera (Revocar) situado junto al token en la página Tokens de acceso.
Si no puede crear o usar tokens en el área de trabajo, puede deberse a que el administrador del área de trabajo tiene tokens deshabilitados o no le ha concedido permiso para crear o usar tokens. Consulte el administrador del área de trabajo o los siguientes temas:
Tokens de acceso personal de Azure Databricks para entidades de servicio
Una entidad de servicio puede crear tokens de acceso personal de Databricks para sí mismo, como se indica a continuación:
En este procedimiento se supone que usa autenticación de máquina a máquina (M2M) de OAuth o autenticación de entidad de servicio de Microsoft Entra ID para configurar la CLI de Databricks para autenticar la entidad de servicio para generar tokens de acceso personal de Azure Databricks para sí mismo. Consulte Autenticación de máquina a máquina (M2M) de OAuth o autenticación de entidad de servicio de Microsoft Entra ID.
Use la CLI de Databricks para ejecutar el siguiente comando, que genera otro token de acceso para la entidad de servicio.
Ejecute el siguiente comando:
databricks tokens create --comment <comment> --lifetime-seconds <lifetime-seconds> -p <profile-name>
--comment
: reemplace<comment>
por cualquier comentario significativo sobre el propósito del token de acceso. Si no se especifica la opción--comment
, no se genera ningún comentario.--lifetime-seconds
: reemplace<lifetime-seconds>
por el número de segundos durante los que el token de acceso es válido. Por ejemplo, 1 día equivale a 86 400 segundos. Si no se especifica la opción--lifetime-seconds
, el token de acceso se establece en nunca expirar (no se recomienda).--profile-name
: reemplace<profile-name>
por el nombre de un perfil de configuración de Azure Databricks que contiene información de autenticación para la entidad de servicio y el área de trabajo de destino. Si no se especifica la opción-p
, la CLI de Databricks intentará buscar y usar un perfil de configuración denominadoDEFAULT
.
En la respuesta, copie el valor de
token_value
, que es el token de acceso de la entidad de servicio.Asegúrese de guardar el token copiado en una ubicación segura. No comparta el token copiado con otros usuarios. Si pierde el token copiado, no podrá volver a generar ese mismo token. Debe repetir el procedimiento para crear un nuevo token.
Si no puede crear o usar tokens en el área de trabajo, puede deberse a que el administrador del área de trabajo tiene tokens deshabilitados o no le ha concedido permiso para crear o usar tokens. Consulte el administrador del área de trabajo o lo siguiente:
Realizar la autenticación de token de acceso personal de Azure Databricks
Para configurar la autenticación de token de acceso personal de Azure Databricks, debes establecer las siguientes variables de entorno asociadas, campos .databrickscfg
, campos de Terraform o campos Config
:
- El host de Azure Databricks, especificado como la dirección URL de destino de Azure Databricks por área de trabajo, por ejemplo
https://adb-1234567890123456.7.azuredatabricks.net
. - El token de acceso personal de Azure Databricks para la cuenta de usuario de Azure Databricks.
Para realizar la autenticación de token de acceso personal de Azure Databricks, integra lo siguiente dentro de tu código, según la herramienta participante o el SDK:
Entorno
Para usar variables de entorno para un tipo de autenticación de Azure Databricks específico con una herramienta o SDK, consulte Autenticación del acceso a los recursos de Azure Databricks o la documentación del SDK o de la herramienta. Consulte también Variables de entorno y campos para la autenticación unificada del cliente y Métodos predeterminados para la autenticación unificada del cliente.
Establezca estas variables de entorno:
DATABRICKS_HOST
, establecido en la URL por espacio de trabajo de Azure Databricks, por ejemplohttps://adb-1234567890123456.7.azuredatabricks.net
.DATABRICKS_TOKEN
, se establece en la cadena de token.
Perfil
Cree o identifique un perfil de configuración de Azure Databricks con los campos siguientes en el archivo .databrickscfg
. Si crea el perfil, reemplace los marcadores de posición por los valores adecuados. Para usar el perfil con una herramienta o un SDK, consulte Autenticación del acceso a los recursos de Azure Databricks o la documentación de la herramienta o del SDK. Consulte también Variables de entorno y campos para la autenticación unificada del cliente y Métodos predeterminados para la autenticación unificada del cliente.
Establezca los siguientes valores en el archivo .databrickscfg
. En este caso, el host es la dirección URL de Azure Databricks por área de trabajo, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
token = <token>
En lugar de establecer manualmente los valores anteriores en el archivo .databrickscfg
, puede usar la CLI de Databricks para establecer estos valores en su lugar, como se indica a continuación:
Nota:
En el siguiente procedimiento se usa la CLI de Databricks para crear un perfil de configuración de Azure Databricks con el nombre DEFAULT
. Si ya tiene un perfil de configuración DEFAULT
, este procedimiento sobrescribe el perfil de configuraciónDEFAULT
existente.
Para comprobar si ya tiene un perfil de configuración DEFAULT
y para ver esta configuración de perfil si existe, use la CLI de Databricks para ejecutar el comando databricks auth env --profile DEFAULT
.
Para crear un perfil de configuración con un nombre distinto de DEFAULT
, reemplace la parte DEFAULT
de --profile DEFAULT
en el siguiente comando databricks configure
por un nombre diferente para el perfil de configuración.
Use la CLI de Databricks para crear un perfil de configuración de Azure Databricks denominado
DEFAULT
que use la autenticación de token de acceso personal de Azure Databricks. Para ello, ejecute el siguiente comando:databricks configure --profile DEFAULT
En el símbolo del sistema Host de Databricks, escriba la dirección URL por área de trabajo de Azure Databricks, por ejemplo,
https://adb-1234567890123456.7.azuredatabricks.net
.En el símbolo del sistema Token de acceso personal, escriba el token de acceso personal de Azure Databricks para el área de trabajo.
CLI
Para la CLI de Databricks, ejecute el comando databricks configure
. En los indicadores, escriba la siguiente información:
- El host de Azure Databricks, especificado como la dirección URL de destino de Azure Databricks por área de trabajo, por ejemplo
https://adb-1234567890123456.7.azuredatabricks.net
. - El token de acceso personal de Azure Databricks para la cuenta de usuario de Azure Databricks.
Para más información, consulte Autenticación de token de acceso personal de Azure Databricks.
Conexión
Nota:
La autenticación de token de acceso personal de Azure Databricks se admite en las siguientes versiones de Databricks Connect:
- Para Python, Databricks Connect para Databricks Runtime 13.3 LTS y versiones posteriores.
- Para Scala, Databricks Connect para Databricks Runtime 13.3 LTS y versiones posteriores.
Para Databricks Connect, puede usar la CLI de Databricks para establecer los valores en el archivo .databrickscfg
, para las operaciones de nivel de área de trabajo de Azure Databricks, tal y como se especifica en esta sección de “Perfil” de este artículo, como se indica a continuación:
Nota:
En el siguiente procedimiento se usa la CLI de Databricks para crear un perfil de configuración de Azure Databricks con el nombre DEFAULT
. Si ya tiene un perfil de configuración DEFAULT
, este procedimiento sobrescribe el perfil de configuraciónDEFAULT
existente.
Para comprobar si ya tiene un perfil de configuración DEFAULT
y para ver esta configuración de perfil si existe, use la CLI de Databricks para ejecutar el comando databricks auth env --profile DEFAULT
.
Para crear un perfil de configuración con un nombre distinto de DEFAULT
, reemplace la parte DEFAULT
de --profile DEFAULT
en el comando databricks configure
, tal como se muestra en el paso siguiente, por un nombre diferente para el perfil de configuración.
Use la CLI de Databricks para crear un perfil de configuración de Azure Databricks denominado
DEFAULT
que use la autenticación de token de acceso personal de Azure Databricks. Para ello, ejecute el siguiente comando:databricks configure --configure-cluster --profile DEFAULT
En el símbolo del sistema Host de Databricks, escriba la dirección URL por área de trabajo de Azure Databricks, por ejemplo,
https://adb-1234567890123456.7.azuredatabricks.net
.En el símbolo del sistema Token de acceso personal, escriba el token de acceso personal de Azure Databricks para el área de trabajo.
En la lista de clústeres disponibles que aparece, use las teclas de dirección arriba y abajo para seleccionar el clúster de Azure Databricks de destino en el área de trabajo y, después, presione
Enter
. También puede escribir cualquier parte del nombre para mostrar del clúster para filtrar la lista de clústeres disponibles.
Otros enfoques admitidos para Databricks Connect incluyen lo siguiente:
- Establezca manualmente los valores del
.databrickscfg
archivo para las operaciones de nivel de área de trabajo Azure Databricks tal como se especifica en esta sección “Perfil” de este artículo. Establezca también la variable de entornocluster_id
en su perfil en la dirección URL del área de trabajo. Por ejemplo:https://adb-1234567890123456.7.azuredatabricks.net
. - Establezca las variables de entorno para las operaciones de nivel de área de trabajode Azure Databricks tal como se especifica en esta sección “Entorno” de este artículo. Establezca también la variable de entorno
DATABRICKS_CLUSTER_ID
en la dirección URL del área de trabajo. Por ejemplo:https://adb-1234567890123456.7.azuredatabricks.net
.
Los valores del archivo .databrickscfg
siempre tienen prioridad sobre las variables de entorno.
Para inicializar el cliente de Databricks Connect con estas variables de entorno o valores en el archivo .databrickscfg
, consulte una de las siguientes opciones:
- Para Python, consulte Configuración de las propiedades de conexión para Python.
- Para Scala, consulte Configuración de las propiedades de conexión para Scala.
Código de VS
Para la extensión de Databricks para Visual Studio Code, haga lo siguiente:
- Establezca los valores del archivo
.databrickscfg
para las operaciones de nivel de área de trabajo de Azure Databricks tal como se especifica en esta sección “Perfil” de este artículo. - En el panel Configuración de la extensión de Databricks para Visual Studio Code, haga clic en Configurar Databricks.
- En la Paleta de comandos, en Host de Databricks, escriba la dirección URL del área de trabajo como, por ejemplo,
https://adb-1234567890123456.7.azuredatabricks.net
, y presioneEnter
. - En la paleta de comandos, seleccione el nombre del perfil de destino en la lista de la dirección URL.
Para obtener más detalles, consulte Configuración de la autenticación para la extensión de Databricks para Visual Studio Code.
Terraform
Para la autenticación predeterminada:
provider "databricks" {
alias = "workspace"
}
Para la configuración directa (reemplace los marcadores de posición retrieve
por su propia implementación para recuperar los valores de la consola o de otro almacén de configuración, como HashiCorp Vault. Consulte también Proveedor de Vault). En este caso, el host es la dirección URL de Azure Databricks por área de trabajo, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net
:
provider "databricks" {
alias = "workspace"
host = <retrieve-workspace-url>
token = <retrieve-token>
}
Para obtener más información sobre la autenticación con el proveedor Databricks Terraform, consulte Authentication.
Python
Para la autenticación predeterminada:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
Para la configuración directa (reemplace los marcadores de posición retrieve
por su propia implementación para recuperar los valores de la consola o de otro almacén de configuración, como Azure KeyVault). En este caso, el host es la dirección URL de Azure Databricks por área de trabajo, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net
:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient(
host = retrieve_workspace_url(),
token = retrieve_token()
)
# ...
Para obtener más información sobre la autenticación con herramientas y SDK de Databricks que usan Python y que implementan la autenticación unificada de cliente de Databricks, consulte:
- Configuración del cliente de Databricks Connect para Python
- Configuración de la autenticación de la extensión de Databricks para Visual Studio Code
- Autenticación del SDK de Databricks para Python con su cuenta o área de trabajo de Azure Databricks
Java
Para la autenticación predeterminada:
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
Para la configuración directa (reemplace los marcadores de posición retrieve
por su propia implementación para recuperar los valores de la consola o de otro almacén de configuración, como Azure KeyVault). En este caso, el host es la dirección URL de Azure Databricks por área de trabajo, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net
:
import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveWorkspaceUrl())
.setToken(retrieveToken());
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
Para obtener más información sobre la autenticación con herramientas y SDK de Databricks que usan Java y que implementan la autenticación unificada de cliente de Databricks, consulte:
- Configuración del cliente de Databricks Connect para Scala (el cliente de Databricks Connect para Scala usa el SDK de Databricks para Java incluido para la autenticación)
- Autenticación del SDK de Databricks para Java con su cuenta o área de trabajo de Azure Databricks
Go
Para la autenticación predeterminada:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
Para la configuración directa (reemplace los marcadores de posición retrieve
por su propia implementación para recuperar los valores de la consola o de otro almacén de configuración, como Azure KeyVault). En este caso, el host es la dirección URL de Azure Databricks por área de trabajo, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
Host: retrieveWorkspaceUrl(),
Token: retrieveToken(),
}))
// ...
Para obtener más información sobre la autenticación con herramientas y SDK de Databricks que usan Go y que implementan la autenticación unificada de cliente de Databricks, consulte Autenticación del SDK de Databricks para Go con su cuenta de Azure Databricks o su área de trabajo.