Autenticación de token de acceso personal de Azure Databricks

Los tokens de acceso personal e Azure Databricks son uno de los tipos de credenciales más compatibles, para los recursos y las operaciones en el 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.

Nota:

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 (anteriormente Azure Active Directory) 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:

  1. 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.
  2. Haga clic en Desarrollador.
  3. Junto a Tokens de acceso, haga clic en Administrar.
  4. Haga clic en Generate new token (Generar nuevo token).
  5. (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).
  6. Haga clic en Generar.
  7. 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 lo siguiente:

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:

Nota:

No puede usar la interfaz de usuario de Azure Databricks para generar tokens de acceso personal de Azure Databricks para entidades de servicio. Este proceso usa la versión 0.205 o posterior de la CLI de Databricks para generar un token de acceso para una entidad de servicio. Si aún no tiene instalada la CLI de Databricks, consulte Instalar o actualizar la CLI de Databricks.

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.

  1. Use la CLI de Databricks para ejecutar el siguiente comando, que genera otro token de acceso para la entidad de servicio.

    En el siguiente comando, reemplace estos marcadores de posición:

    • Si lo desea, 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.
    • Si lo desea, reemplace <lifetime-seconds> por el número de segundos para 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).
    • Si lo desea, 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 denominado DEFAULT.
    databricks tokens create --comment <comment> --lifetime-seconds <lifetime-seconds> -p <profile-name>
    
  2. 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 Tipos de autenticación admitidos por la herramienta Azure Databricks o el SDK 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 Orden predeterminado de evaluación para los métodos de autenticación y credenciales unificados del cliente.

Establezca estas variables de entorno:

  • DATABRICKS_HOST, establecido en la URL por espacio de trabajo de Azure Databricks, por ejemplo https://adb-1234567890123456.7.azuredatabricks.net.
  • DATABRICKS_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 Tipos de autenticación admitidos por la herramienta Azure Databricks o el SDK 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 Orden predeterminado de evaluación para los métodos de autenticación y credenciales unificados 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.

  1. 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
    
  2. 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.

  3. 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.

  1. 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
    
  2. 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.

  3. En el símbolo del sistema Token de acceso personal, escriba el token de acceso personal de Azure Databricks para el área de trabajo.

  4. 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:

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:

VS Code

Para la extensión de Databricks para Visual Studio Code, haga lo siguiente:

  1. 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.
  2. En el panel Configuración de la extensión de Databricks para Visual Studio Code, haga clic en Configurar Databricks.
  3. 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 presione Enter.
  4. 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 autenticación para la extensión de Databricks para VS 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:

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:

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.