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 la vida útil máxima para su entorno de trabajo. De forma predeterminada, la duración máxima del token para un área de trabajo es de 730 días.--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.
Uso de la API REST de Azure Databricks para emitir tokens de acceso personal
Azure Databricks proporciona un punto de conexión /api/2.0/token/create
REST para emitir PAT. Consulte Creación de un token de usuario para obtener más información sobre la API.
Debe proporcionar valores específicos a la API REST. En el ejemplo siguiente, establezca estos valores:
- Reemplace por
<databricks-instance>
la dirección URL del área de trabajo de Databricks. Por ejemplo,dbc-abcd1234-5678.cloud.databricks.com
. - Reemplace por
<your-existing-access-token>
un PAT (cadena) válido existente que tenga permisos para crear nuevos tokens.
Proporcione los valores de estos parámetros:
comment
: descripción del nuevo token.lifetime_seconds
: duración del token en segundos.
curl -X POST https://<databricks-instance>/api/2.0/token/create \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
"comment": "New PAT using DB API",
"lifetime_seconds": <lifetime-of-pat-in-seconds>
}'
La -d
marca proporciona la carga JSON para la solicitud.
Si se ejecuta correctamente, esto da como resultado una carga de respuesta similar a la siguiente:
{
"access_token": "<your-newly-issued-pat>",
"token_type": "Bearer",
"expires_in": <the-duration-of-the-new-pat>
}
Proporcione el nuevo token de la respuesta en el encabezado Authorization de las llamadas posteriores a las API REST de Databricks. Por ejemplo:
# This example uses a simple GET. For POST or other REST verbs, you may need to provide additional parameters.
curl -X GET "https://<databricks-instance>/api/2.0/<path-to-endpoint>" \
-H "Authorization: Bearer <your-new-pat>"
import requests
headers = {
'Authorization': 'Bearer <your-new-pat>'
}
# This example is for an HTTP GET operation.
response = requests.get('https://<databricks-instance>/api/2.0/<path-to-endpoint>', headers=headers)