Partager via


Paramètres d’authentification pour le pilote ODBC Databricks

Cet article vous explique comment configurer les paramètres d’authentification Azure Databricks pour le pilote ODBC Databricks.

Le pilote ODBC Databricks prend en charge les types d’authentification Azure Databricks suivants :

Jeton d’accès personnel Azure Databricks

Pour créer un jeton d’accès personnel Azure Databricks, suivez les étapes décrites dans Les jetons d’accès personnels Azure Databricks pour les utilisateurs de l’espace de travail.

Pour vous authentifier à l’aide d’un jeton d’accès personnel Azure Databricks, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 3
UID token
PWD Le jeton d’accès personnel Databricks pour votre utilisateur d’espace de travail

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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>

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=3;
UID=token;
PWD=<personal-access-token>

Jeton Microsoft Entra ID

Le pilote ODBC 2.6.15 et versions ultérieures prennent en charge les jetons Microsoft Entra ID pour un utilisateur Azure Databricks ou un principal de service Microsoft Entra ID.

Pour créer un jeton d’accès Microsoft Entra ID, effectuez ce qui suit :

Les jetons d’accès Microsoft Entra ID ont une durée de vie par défaut d’une heure. Vous pouvez actualiser un jeton d’accès par programmation pour une session existante sans rompre la connexion en exécutant le code dans Actualiser un jeton d’accès Microsoft Entra ID. Si vous souhaitez obtenir des instructions sur l’actualisation du jeton, consultez la section Configuring Authentication on Windows > Providing a New Access Token dans le Guide du pilote ODBC Databricks.

Pour vous authentifier à l’aide d’un jeton Microsoft Entra ID, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 0
Auth_AccessToken Jeton Microsoft Entra ID

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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>

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

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>

Pour plus d’informations, consultez les sections Token Pass-through du Guide de pilote ODBC Databricks.

Jetons OAuth 2.0

Le pilote ODBC 2.7.5 et versions ultérieures prennent en charge un jeton OAuth 2.0 pour un principal de service Microsoft Entra ID. Cette opération est également appelée authentification directe de jeton OAuth 2.0.

Important

Le pilote ODBC 2.7.5 et version ultérieure prend en charge l’utilisation de secrets OAuth Azure Databricks pour créer des jetons OAuth 2.0. Les secrets Microsoft Entra ID ne sont pas pris en charge.

Les jetons OAuth 2.0 ont une durée de vie par défaut de 1 heure. Pour générer un token OAuth 2.0, répétez ce processus.

Pour vous authentifier à l’aide d’une authentification directe de jeton OAuth 2.0, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 0
Auth_AccessToken Jeton OAuth Azure Databricks

(Les jetons Microsoft Entra ID ne sont pas pris en charge pour l’authentification directe de jeton OAuth 2.0.)

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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>

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

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>

Pour plus d’informations, consultez les sections Token Pass-through du Guide de pilote ODBC Databricks.

Authentification Databricks OAuth d’utilisateur à machine (U2M)

Le pilote ODBC 2.8.2 et versions ultérieures prend en charge l’authentification utilisateur à machine (U2M) OAuth pour un utilisateur Azure Databricks. Elle est également appelée authentification basée sur un navigateur OAuth 2.0.

L’authentification basée sur un navigateur OAuth U2M ou OAuth 2.0 a des prérequis. Les jetons OAuth 2.0 ont une durée de vie par défaut de 1 heure. L’authentification basée sur un navigateur OAuth U2M ou OAuth 2.0 doit automatiquement actualiser des jetons OAuth 2.0 expirés pour vous.

Remarque

L’authentification basée sur un navigateur OAuth U2M ou OAuth 2.0 fonctionne uniquement avec des applications s’exécutant localement. Elle ne fonctionne pas avec des applications basées sur un cloud ou sur un serveur.

Pour vous authentifier à l’aide de l’authentification basée sur un navigateur OAuth (U2M) ou OAuth 2.0, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 2
PWD Un mot de passe de votre choix. Le pilote utilise cette clé pour le chiffrement du jeton d’actualisation.
Auth_Client_ID (facultatif) databricks-sql-odbc (par défaut) Vous trouverez toutes les applications applicables sous Paramètres de connexion d’application dans la console de compte Databricks. Consultez Activer les applications OAuth personnalisées à l’aide de l’interface utilisateur Azure Databricks.
Auth_Scope (facultatif) sql offline_access (valeur par défaut)
OAuth2RedirectUrlPort (facultatif) 8020 (valeur par défaut)

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[Databricks]
Driver=<path-to-driver>
Host=<server-hostname>
Port=443
HTTPPath=<http-path>
SSL=1
ThriftTransport=2
AuthMech=11
Auth_Flow=2
PWD=<password>

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=2;
PWD=<password>

Pour plus d’informations, consultez les sections Browser Based du Guide de pilote ODBC Databricks.

Authentification d’utilisateur à machine (U2M) OAuth Microsoft Entra ID

Le pilote ODBC 2.8.2 et versions ultérieures prend en charge l’authentification d’utilisateur à machine (U2M) OAuth Microsoft Entra ID pour un utilisateur Azure Databricks.

Pour utiliser Utilisateur à machine (U2M) OAuth Microsoft Entra ID, le client OAuth (application) doit être inscrit dans Microsoft Entra ID, consultez Instruction.

Pour vous authentifier à l’aide d’Utilisateur à machine (U2M) OAuth Microsoft Entra ID, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 2
PWD Un mot de passe de votre choix. Le pilote utilise cette clé pour le chiffrement du jeton d’actualisation
Auth_Client_ID ID d’application (client) de l’application 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 Port de redirection de l’application Azure

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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>

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

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>;

Authentification OAuth machine à machine (M2M)

Le pilote ODBC prend en charge l’authentification de machine à machine (M2M) OAuth pour un principal de service Azure Databricks. Elle est également appelée authentification des informations d’identification du client OAuth 2.0.

Pour configurer l’authentification des informations d’identification du client OAuth M2M ou OAuth 2.0, effectuez ces étapes :

  1. Créez un principal de service Azure Databricks dans votre espace de travail Azure Databricks et créez un secret OAuth pour ce principal de service.

    Pour créer le principal de service et son secret OAuth, consultez Authentifier l’accès à Azure Databricks avec un principal de service à l’aide d’OAuth (OAuth M2M). Notez la valeur de l’UUID ou de l’ID de l’application du principal de service, ainsi que la valeur du secret OAuth du principal de service.

  2. Accordez au principal de service l’accès à votre cluster ou entrepôt. Consultez Autorisations de calcul ou Gérer un entrepôt SQL.

Pour vous authentifier à l’aide de l’authentification des informations d’identification du client OAuth (M2M) ou OAuth 2.0, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres de capacité de pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 1
Auth_Client_ID La valeur UUID/ID d’application.
Auth_Client_Secret La valeur Secret OAuth du principal de service.
Auth_Scope (facultatif) all-apis (valeur par défaut)

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

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

Pour plus d’informations, consultez les sections Client Credentials du Guide de pilote ODBC Databricks.

Authentification de machine à machine (M2M) OAuth Microsoft Entra ID

Le pilote ODBC 2.8.2 et versions ultérieures prend en charge l’authentification de machine à machine (M2M) OAuth Entra ID pour un principal de service Microsoft Entra ID.

Pour configurer l’authentification de machine à machine (M2M) OAuth Entra ID, procédez comme suit :

  1. Créez un principal de service géré par Microsoft Entra ID. Pour cela, consultez Gérer les principaux de service.
  2. Accordez au principal de service l’accès à votre cluster ou entrepôt. Consultez Autorisations de calcul ou Gérer un entrepôt SQL.

Pour vous authentifier à l’aide de Machine à machine (M2M) OAuth Entra ID, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 1
Auth_Client_ID ID d’application du principal de service dans Entra ID
Auth_Client_Secret Clé secrète client du principal de service dans Entra ID. Il s’agit de la clé secrète client que vous créez dans Certificats et secrets dans Microsoft Entra ID.
Auth_Scope 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default
OIDCDiscoveryEndpoint https://login.microsoftonline.com/<AzureTenantId>/v2.0/.well-known/openid-configuration

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

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

Authentification des identités managées Azure

Le pilote ODBC (versions 2.7.7 et ultérieures) prend en charge l’authentification par identités managées Azure qui utilise des identités managées pour les ressources Azure (anciennement Managed Service Identities (MSI)) pour l’authentification auprès d’Azure Databricks. Les appels programmatiques aux opérations des espaces de travail Azure Databricks utilisent ces identités managées lors de l’utilisation des ressources Azure qui prennent en charge les identités managées, comme les machines virtuelles Azure.

Pour vous authentifier à l’aide d’une authentification par les identités managées Azure, ajoutez les configurations suivantes à vos paramètres de calcul et tous les paramètres des capacités du pilote spéciaux ou avancés :

Paramètre Valeur
AuthMech 11
Auth_Flow 3
Auth_Client_ID L’ID de l’identité managée Azure.
Azure_workspace_resource_id L’ID de ressource Azure de votre espace de travail Azure Databricks.

Pour obtenir cet ID, dans la barre de navigation supérieure de votre espace de travail Azure Databricks, cliquez sur votre nom d’utilisateur, puis sur
Portail Azure. Dans la page ressource de l’espace de travail Azure Databricks qui s’affiche, cliquez sur Propriétés sous Paramètres dans la barre latérale. L’ID se trouve dans ID sous Essentials.

Pour créer un nom de source de données pour les systèmes non-Windows, utilisez le format suivant :

[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>

Pour créer une chaîne de connexion sans DSN, utilisez le format suivant. Des sauts de ligne ont été ajoutés pour des raisons de lisibilité. La chaîne ne doit pas contenir ces sauts de ligne :

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>