Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
En esta página se describe cómo configurar las opciones de autenticación de Azure Databricks para el controlador ODBC de Databricks.
El controlador ODBC de Databricks admite los siguientes tipos de autenticación de Azure Databricks:
- token de Microsoft Entra ID
- tokens de OAuth 2.0
- autenticación de usuario a máquina (U2M) de Databricks OAuth
- autenticación de usuario a máquina (U2M) de OAuth de Microsoft Entra ID
- autenticación de máquina a máquina (M2M) de OAuth
- autenticación de máquina a máquina (M2M) de OAuth de Microsoft Entra ID
- Autenticación de identidades administradas de Azure
- Token de acceso personal de Azure Databricks (heredado)
Token de Microsoft Entra ID
El controlador ODBC 2.6.15 y versiones posteriores admiten tokens de Microsoft Entra ID para un usuario de Azure Databricks o una entidad de servicio de Microsoft Entra ID.
Para crear un token de acceso de Microsoft Entra ID, haga lo siguiente:
- Para un usuario de Azure Databricks, use la CLI de Azure. Ver Obtener manualmente tokens de ID de Microsoft Entra.
- Para un principal de servicio de Microsoft Entra ID, consulte Obtención de tokens para principales de servicio. Para crear una entidad de servicio administrada de Microsoft Entra ID, consulte Entidades de servicio.
Los tokens de acceso de Id. de Microsoft Entra tienen una duración predeterminada de aproximadamente una hora. Actualice un token de acceso mediante programación para una sesión existente sin interrumpir la conexión ejecutando el código en Tokens de actualización. Para obtener instrucciones, consulte Uso de OAuth 2.0 en la Guía del controlador ODBC de Databricks.
Para autenticarse mediante un token de Microsoft Entra ID, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
0 |
Auth_AccessToken |
El token de Microsoft Entra ID |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=0
Auth_AccessToken=<microsoft-entra-id-token>
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=0;
Auth_AccessToken=<microsoft-entra-id-token>
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Para obtener más información, consulte la sección Paso a través de tokens en la Guía del controlador ODBC de Databricks (HTML o PDF).
Principales de servicio con roles de Azure
Si el principal de servicio de Id. de Microsoft Entra tiene un rol de Azure en el recurso del área de trabajo de Azure, pero no está presente en el área de trabajo de Azure Databricks, debe establecer encabezados HTTP adicionales en la conexión ODBC. El controlador ODBC de Simba Spark admite la adición de encabezados mediante el formato http.header.[HeaderKey]=[HeaderValue].
Establezca las siguientes cabeceras requeridas de los principales de servicio con el rol de Azure en la cadena de conexión DSN o sin DSN:
http.header.X-Databricks-Azure-SP-Management-Token=<management-access-token>http.header.X-Databricks-Azure-Workspace-Resource-Id=<workspace-resource-id>
Para obtener el token de administración, vea Entidades de servicio con el rol de Azure. Para obtener el identificador de recurso del área de trabajo, consulte Autenticación de identidades administradas de Azure.
tokens de OAuth 2.0 de
El controlador ODBC 2.7.5 y versiones posteriores admite un token de OAuth 2.0 para una entidad de servicio de Microsoft Entra ID. Esto también se conoce como autenticación de paso a través de tokens de OAuth 2.0.
- Para crear un token de OAuth 2.0 para la autenticación de paso a través de tokens para una entidad de servicio de Id. de Microsoft Entra, consulte Generación manual de tokens de acceso de OAuth M2M. Anote el valor de OAuth
access_tokendel principal de servicio. - Para crear una entidad de servicio administrada de Microsoft Entra ID, consulte Entidades de servicio.
Importante
El controlador ODBC 2.7.5 y versiones posteriores admiten el uso de secretos de OAuth de Azure Databricks para crear tokens de OAuth 2.0. No se admiten secretos de id. de Microsoft Entra.
Los tokens de OAuth 2.0 tienen una duración predeterminada de 1 hora. Para generar un nuevo token de OAuth 2.0, repita este proceso.
Para autenticarse mediante la autenticación transferida de un token de OAuth 2.0, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
0 |
Auth_AccessToken |
Token de OAuth de Azure Databricks (La autenticación de paso a través de tokens de OAuth 2.0 no admite tokens de identificador de Microsoft Entra). |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=0
Auth_AccessToken=<databricks-oauth-token>
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=0;
Auth_AccessToken=<databricks-oauth-token>
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Para obtener más información, consulte la sección Paso a través de tokens en la Guía del controlador ODBC de Databricks (HTML o PDF).
autenticación de usuario a máquina (U2M) de Databricks OAuth
El controlador ODBC 2.8.2 y versiones posteriores admite la autenticación de usuario a máquina (U2M) de OAuth para un usuario de Azure Databricks. Esto también se conoce como autenticación basada en el explorador de OAuth 2.0.
La autenticación basada en el explorador de OAuth 2.0 o de usuario a máquina de OAuth no tiene requisitos previos. Los tokens de OAuth 2.0 tienen una duración predeterminada de 1 hora. La autenticación basada en explorador de OAuth U2M o OAuth 2.0 actualiza automáticamente los tokens de OAuth 2.0 expirados.
Nota:
La autenticación basada en el explorador de OAuth 2.0 o de usuario a máquina de OAuth solo funciona con aplicaciones que se ejecutan localmente. No funciona con aplicaciones basadas en servidor o basadas en la nube.
Para autenticarse mediante la autenticación basada en el explorador de OAuth 2.0 o la autenticación de usuario a máquina (U2M) de OAuth, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
2 |
PWD |
Una contraseña de su elección. El controlador usa esta clave para el cifrado de tokens de actualización. |
Auth_Client_ID (opcional) |
databricks-sql-odbc (valor predeterminado). Para todas las aplicaciones disponibles, consulte Configuración de conexiones de aplicaciones en la consola de la cuenta. |
Auth_Scope (opcional) |
sql offline_access (valor predeterminado) |
OAuth2RedirectUrlPort (opcional) |
8020 (valor predeterminado) |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=2
PWD=<password>
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=2;
PWD=<password>
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Para obtener más información, consulte la sección Basada en el navegador en la Guía del controlador ODBC de Databricks (HTML o PDF).
autenticación de usuario a máquina (U2M) de OAuth de Microsoft Entra ID
El controlador ODBC 2.8.2 y versiones posteriores admite la autenticación de usuario a máquina (U2M) de OAuth de Microsoft Entra ID para un usuario de Azure Databricks.
Para usar Microsoft Entra ID OAuth de usuario a máquina (U2M), debe registrar la aplicación cliente de OAuth en Microsoft Entra ID, consulte Registrar una aplicación cliente en Microsoft Entra ID.
Para usar la autenticación de usuario a máquina (U2M) de Microsoft Entra ID, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
2 |
PWD |
Una contraseña de su elección. El controlador usa esta clave para el cifrado de tokens de actualización. |
Auth_Client_ID |
Id. de la aplicación (cliente) de la aplicación de Azure |
Auth_Scope |
2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/user_impersonation offline_access |
OIDCDiscoveryEndpoint |
https://login.microsoftonline.com/<azureTenantId>/v2.0/.well-known/openid-configuration |
OAuth2RedirectUrlPort |
Puerto de redirección de la aplicación de Azure |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=1
Auth_Client_ID=<application-id-azure-application>
Auth_Scope=2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/user_impersonation offline_access
OIDCDiscoveryEndpoint=https://login.microsoftonline.com/<azureTenantId>/v2.0/.well-known/openid-configuration
OAuth2RedirectUrlPort=<redirect port of the Azure application>
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=1;
Auth_Client_ID=<application-id-azure-application>;
Auth_Scope=2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/user_impersonation offline_access;
OIDCDiscoveryEndpoint=https://login.microsoftonline.com/<azureTenantId>/v2.0/.well-known/openid-configuration;
OAuth2RedirectUrlPort=<redirect port of the Azure application>;
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Autenticación de máquina a máquina (M2M) de OAuth
El controlador ODBC admite la autenticación de máquina a máquina (M2M) de OAuth para una entidad de servicio de Azure Databricks. Esto también se conoce como autenticación de credenciales de cliente de OAuth 2.0.
Para configurar la autenticación de credenciales de cliente de OAuth M2M o OAuth 2.0, haga lo siguiente:
Cree una entidad de servicio de Azure Databricks en el área de trabajo de Azure Databricks y cree un secreto de OAuth para esa entidad de servicio.
Para crear la entidad de servicio y su secreto de OAuth, consulte Autorización del acceso de la entidad de servicio a Azure Databricks con OAuth. Anote el valor UUID o ID de Aplicación de la entidad de servicio y el valor Secreto para el secreto OAuth de la entidad de servicio.
Proporcione a la entidad de servicio acceso al clúster o al almacenamiento. Vea Permisos de proceso o Administración de un almacén de SQL.
Para autenticarse mediante la autenticación de credenciales de cliente de OAuth 2.0 o la autenticación de máquina a máquina (M2M) de OAuth, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
1 |
Auth_Client_ID |
Valor delidentificador de aplicación / de la entidad de servicio. |
Auth_Client_Secret |
Valor del secreto de OAuth del principal de servicio. |
Auth_Scope (opcional) |
all-apis (valor predeterminado) |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=1
Auth_Client_ID=<service-principal-application-ID>
Auth_Client_Secret=<service-principal-secret>
Auth_Scope=all-apis
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=1;
Auth_Client_ID=<service-principal-application-ID>;
Auth_Client_Secret=<service-principal-secret>;
Auth_Scope=all-apis
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Para obtener más información, consulte la sección Credenciales de cliente de la Guía del controlador ODBC de Databricks (HTML o PDF).
autenticación de máquina a máquina (M2M) de OAuth de Microsoft Entra ID
El controlador ODBC 2.8.2 y versiones posteriores admite la autenticación de máquina a máquina (M2M) de OAuth de Microsoft Entra ID para una entidad de servicio de Microsoft Entra ID.
Para configurar la autenticación de máquina a máquina (M2M) de OAuth de Entra ID, haga lo siguiente:
- Cree una entidad de servicio administrada de Microsoft Entra ID. Para ello, consulte Entidades de servicio.
- Proporcione a la entidad de servicio acceso al clúster o al almacenamiento. Vea Permisos de proceso o Administración de un almacén de SQL.
Para usar la autenticación de máquina a máquina (M2M) de OAuth de Entra ID, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
1 |
Auth_Client_ID |
ID de aplicación del principal de servicio en Entra ID |
Auth_Client_Secret |
El secreto de cliente del principal de servicio en Entra ID. Este es el secreto de cliente que crea en Certificados y secretos en Microsoft Entra ID. |
Auth_Scope |
2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default |
OIDCDiscoveryEndpoint |
https://login.microsoftonline.com/<AzureTenantId>/v2.0/.well-known/openid-configuration |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=1
Auth_Client_ID=<entra-id-service-principal-application-ID>
Auth_Client_Secret=<entra-id-service-principal-client-secret>
Auth_Scope=2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default
OIDCDiscoveryEndpoint=https://login.microsoftonline.com/<AzureTenantId>/v2.0/.well-known/openid-configuration
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=1;
Auth_Client_ID=<entra-id-service-principal-application-ID>>;
Auth_Client_Secret=<entra-id-service-principal-client-secret>;
Auth_Scope=2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default;
OIDCDiscoveryEndpoint=https://login.microsoftonline.com/<AzureTenantId>/v2.0/.well-known/openid-configuration
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Autenticación de identidades administradas de Azure
El controlador ODBC 2.7.7 y versiones posteriores admiten la autenticación de identidades administradas de Azure. Use este método de autenticación al trabajar con recursos de Azure que admiten identidades administradas, como máquinas virtuales de Azure.
- Para obtener más información sobre las identidades administradas, consulte el artículo sobre Qué son las identidades administradas para recursos de Azure.
- Para obtener información sobre cómo crear una identidad administrada y concederle permiso para acceder a las áreas de trabajo de Azure Databricks, consulte Uso de identidades administradas de Azure con Azure Databricks.
Para autenticarse mediante la autenticación de identidades de Azure, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
11 |
Auth_Flow |
3 |
Auth_Client_ID |
Identificador de la identidad administrada de Azure. |
Azure_workspace_resource_id |
El identificador de recurso de Azure correspondiente al área de trabajo de Azure Databricks. Para obtener este identificador, en la barra de navegación superior del área de trabajo de Azure Databricks, haga clic en el nombre de usuario y, a continuación, haga clic en Azure Portal. En la página de recursos del área de trabajo de Azure Databricks que aparece, haga clic en Propiedades en Configuración en la barra lateral. El identificador está en Identificador en Essentials. |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=3
Auth_Client_ID=<azure-managed-identity-ID>
Azure_workspace_resource_id=<azure-workspace-resource-ID>
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=3;
Auth_Client_ID=<azure-managed-identity-ID>;
Azure_workspace_resource_id=<azure-workspace-resource-ID>
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.
Token de acceso personal de Azure Databricks (heredado)
Para crear un token de acceso personal de Azure Databricks, siga los pasos descritos en Creación de tokens de acceso personal para los usuarios del área de trabajo.
Para autenticarse mediante un token de acceso personal de Azure Databricks, agregue las siguientes configuraciones a la configuración de proceso y cualquier configuración de funcionalidad del controlador especial o avanzada:
| Configuración | Valor |
|---|---|
AuthMech |
3 |
UID |
token |
PWD |
El token de acceso personal de Databricks para el usuario del área de trabajo |
A fin de crear un DSN para sistemas que no son Windows, use el siguiente formato:
[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=3
UID=token
PWD=<personal-access-token>
Para crear una cadena de conexión sin DSN, use el siguiente formato. En este ejemplo se incluyen saltos de línea para mejorar la legibilidad. No incluya estos saltos de línea en la cadena de conexión:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=3;
UID=token;
PWD=<personal-access-token>
- Para obtener el valor de
<path-to-driver>, consulte Descargar e instalar el controlador ODBC de Databricks (Simba). - Para obtener los valores de
<server-hostname>y<http-path>, consulte Configuración de proceso para el controlador ODBC de Databricks (Simba). - Opcionalmente, agregue una configuración de funcionalidad de controlador especial o avanzada.