Configurações de autenticação para o Driver ODBC do Databricks
Este artigo descreve como definir as configurações de autenticação do Azure Databricks para o Driver ODBC do Databricks.
O Driver ODBC do Databricks dá suporte para os seguintes tipos de autenticação do Azure Databricks:
- Token de acesso pessoal do Azure Databricks
- Token do Microsoft Entra ID
- Tokens OAuth 2.0
- Autenticação OAuth de usuário para máquina (U2M) do Databricks
- Autenticação OAuth de usuário para máquina (U2M) do Microsoft Entra ID
- Autenticação OAuth máquina a máquina (M2M)
- Autenticação OAuth de máquina para máquina (M2M) do Microsoft Entra ID
- Autenticação de identidades gerenciadas do Azure
Token de acesso pessoal do Azure Databricks
Para criar um token de acesso pessoal do Azure Databricks, siga as etapas em Tokens de acesso pessoal do Azure Databricks para usuários do workspace.
Para autenticar usando um token de acesso pessoal do Azure Databricks, adicione as seguintes configurações às suas configurações de computação e a quaisquer configurações especiais ou avançadas de funcionalidade do driver:
Configuração | Valor |
---|---|
AuthMech |
3 |
UID |
token |
PWD |
O token de acesso pessoal do Databricks para o usuário do workspace |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Token do Microsoft Entra ID
O driver ODBC 2.6.15 e superior dá suporte a tokens do Microsoft Entra ID para um usuário do Azure Databricks ou uma entidade de serviço do Microsoft Entra ID.
Para criar um token de acesso do Microsoft Entra ID, faça o seguinte:
- Para um usuário do Azure Databricks, você pode usar a CLI do Azure. Confira Obter tokens do Microsoft Entra ID para usuários usando a CLI do Azure.
- Para obter uma entidade de serviço do Microsoft Entra ID, confira Obter um token de acesso do Microsoft Entra ID com a CLI do Azure. Para criar uma entidade de serviço gerenciada do Microsoft Entra ID, consulte Gerenciar entidades de serviço.
Os tokens de acesso do Microsoft Entra ID têm um tempo de vida padrão de cerca de 1 hora. Um token de acesso pode ser atualizado programaticamente para uma sessão existente sem interromper a conexão executando o código em Atualizar um token de acesso do Microsoft Entra ID. Para obter instruções sobre como atualizar o token, confira a seção Configuring Authentication on Windows > Providing a New Access Token
no Guia do Driver ODBC do Databricks.
Para autenticar usando um token do Microsoft Entra ID, adicione as seguintes configurações às suas configurações de computação e a todas as configurações especiais ou avançadas de funcionalidades do driver:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
0 |
Auth_AccessToken |
O token do Microsoft Entra ID |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Para obter mais informações, confira as seções Token Pass-through
no Guia do Driver ODBC do Databricks.
Tokens OAuth 2.0
O driver ODBC 2.7.5 e versões posteriores dão suporte a um token OAuth 2.0 para uma entidade de serviço do Microsoft Entra ID. Isso também é conhecido como autenticação de passagem do OAuth 2.0.
- Para criar um token OAuth 2.0 para autenticação de passagem de token para uma entidade de serviço do Microsoft Entra ID, consulte Gerar e usar manualmente tokens de acesso para autenticação OAuth M2M. Anote o valor do OAuth
access_token
da entidade de serviço. - Para criar uma entidade de serviço gerenciada do Microsoft Entra ID, consulte Gerenciar entidades de serviço.
Importante
O driver ODBC 2.7.5 e versões superiores dão suporte ao uso de segredos do Azure Databricks OAuth para criar tokens OAuth 2.0. Não há suporte para segredos do Microsoft Entra ID.
Os tokens OAuth 2.0 têm um tempo de vida padrão de 1 hora. Para gerar um novo token OAuth 2.0, repita esse processo.
Para autenticar usando a autenticação de passagem do token OAuth 2.0, adicione as seguintes configurações às suas configurações de computação e a todas as configurações especiais ou avançadas de funcionalidades do driver:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
0 |
Auth_AccessToken |
O token OAuth do Azure Databricks (Não há suporte para tokens do Microsoft Entra ID autenticação de passagem de token do OAuth 2.0). |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Para obter mais informações, confira as seções Token Pass-through
no Guia do Driver ODBC do Databricks.
Autenticação OAuth de usuário para máquina (U2M) do Databricks
O driver ODBC 2.8.2 e versões posteriores dão suporte para a autenticação OAuth de usuário para máquina (U2M) para um usuário do Azure Databricks. Isso também é conhecido como autenticação baseada em navegador OAuth 2.0.
A autenticação baseada em navegador OAuth U2M ou OAuth 2.0 não tem pré-requisitos. Os tokens OAuth 2.0 têm um tempo de vida padrão de 1 hora. A autenticação baseada em navegador OAuth U2M ou OAuth 2.0 deve atualizar tokens OAuth 2.0 expirados automaticamente para você.
Observação
A autenticação baseada em navegador OAuth U2M ou OAuth 2.0 funciona apenas com aplicativos executados localmente. Ele não funciona com aplicativos baseados em servidor ou na nuvem.
Para autenticar usando a autenticação OAuth de usuário para computador (U2M) ou a autenticação baseada em navegador OAuth 2.0, adicione as seguintes configurações às suas configurações de computação e a todas as configurações especiais ou avançadas de funcionalidades do driver:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
2 |
PWD |
Uma senha de sua escolha. O driver usa essa chave para atualizar a criptografia de token. |
Auth_Client_ID (opcional) |
databricks-sql-odbc (padrão) Você pode encontrar todos os aplicativos aplicáveis nas configurações de conexões de aplicativo no Console de Conta do Databricks Ver Habilitar aplicativos OAuth personalizados usando a interface do usuário do Azure Databricks. |
Auth_Scope (opcional) |
sql offline_access (padrão) |
OAuth2RedirectUrlPort (opcional) |
8020 (padrão) |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
Driver=<path-to-driver>;
Host=<server-hostname>;
Port=443;
HTTPPath=<http-path>;
SSL=1;
ThriftTransport=2;
AuthMech=11;
Auth_Flow=2;
PWD=<password>
- Para obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Para obter mais informações, confira as seções Browser Based
no Guia do Driver ODBC do Databricks.
Autenticação OAuth de usuário para máquina (U2M) do Microsoft Entra ID
O driver ODBC 2.8.2 e versões posteriores dão suporte para a autenticação OAuth de usuário para máquina (U2M) do Microsoft Entra ID para um usuário do Azure Databricks
Para usar a autenticação OAuth de usuário para máquina (U2M), o cliente OAuth (aplicativo) deve ser registrado no Microsoft Entra ID, consulte a instrução.
Para autenticar usando o OAuth de usuário para máquina (U2M) do Microsoft Entra ID, adicione as seguintes configurações às suas configurações de computação e a todas as configurações de funcionalidades do driver especiais ou avançadas:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
2 |
PWD |
Uma senha de sua escolha. O driver usa essa chave para atualizar a criptografia de token |
Auth_Client_ID |
ID do aplicativo (cliente) do aplicativo do 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 |
Porta de redirecionamento do aplicativo do Azure |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Autenticação M2M (de computador para computador) do OAuth
O driver ODBC dá suporte à autenticação OAuth de máquina para máquina (M2M) para uma entidade de serviço do Azure Databricks. Isso também é conhecido como autenticação de credenciais de cliente OAuth 2.0.
Para configurar a autenticação de credenciais do cliente OAuth M2M ou OAuth 2.0, faça o seguinte:
Crie uma entidade de serviço do Azure Databricks em seu workspace do Azure Databricks e crie um segredo OAuth para essa entidade de serviço.
Para criar a entidade de serviço e seu segredo OAuth, consulte Autenticar o acesso ao Azure Databricks com uma entidade de serviço usando OAuth (OAuth M2M). Anote o valor do UUID ou da ID do aplicativo da entidade de serviço e o valor do Segredo do segredo OAuth da entidade de serviço.
Conceda à entidade de serviço acesso ao cluster ou ao warehouse. Consulte Permissões de computação ou Gerenciar um SQL warehouse.
Para autenticar usando a autenticação de credenciais de cliente OAuth M2M (machine-to-machine) ou OAuth 2.0, adicione as seguintes configurações às suas configurações de computação e a quaisquer configurações especiais ou avançadas de funcionalidade do driver:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
1 |
Auth_Client_ID |
Valor da GUID/ID do Aplicativo da entidade de serviço. |
Auth_Client_Secret |
Valor do Segredo do OAuth da entidade de serviço. |
Auth_Scope (opcional) |
all-apis (padrão) |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Para obter mais informações, confira as seções Client Credentials
no Guia do Driver ODBC do Databricks.
Autenticação OAuth de máquina para máquina (M2M) do Microsoft Entra ID
O driver ODBC 2.8.2 e versões posteriores dão suporte para autenticação OAuth de máquina para máquina (M2M) para uma entidade de serviço do Microsoft Entra ID.
Para configurar a autenticação de máquina para máquina (M2M) do OAuth do Entra ID, faça o seguinte:
- Criar uma entidade de serviço gerenciada do Microsoft Entra ID. Para fazer isso, confira Gerenciar entidades de serviço.
- Conceda à entidade de serviço acesso ao cluster ou ao warehouse. Consulte Permissões de computação ou Gerenciar um SQL warehouse.
Para autenticar usando o OAuth de máquina para máquina (M2M) do Microsoft Entra ID, adicione as seguintes configurações às suas configurações de computação e a todas as configurações de funcionalidades do driver especiais e avançadas:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
1 |
Auth_Client_ID |
O ID de aplicativo da entidade de serviço no Entra ID |
Auth_Client_Secret |
O segredo do cliente da entidade de serviço no Entra ID. Esse é o segredo do cliente que você cria em Certificados e segredos no Microsoft Entra ID. |
Auth_Scope |
2ff814a6-3304-4ab8-85cb-cd0e6f879c1d/.default |
OIDCDiscoveryEndpoint |
https://login.microsoftonline.com/<AzureTenantId>/v2.0/.well-known/openid-configuration |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.
Autenticação de identidades gerenciadas do Azure
O driver ODBC 2.7.7 e superior oferece suporte à autenticação de identidades gerenciadas do Azure, que usa identidades gerenciadas para recursos do Azure (anteriormente Serviço Gerenciado de Identidades (MSI)) para autenticar com o Azure Databricks. As chamadas programáticas para as operações do workspace do Azure Databricks usam essas identidades gerenciadas ao trabalhar com recursos do Azure que oferecem suporte a identidades gerenciadas, como as VMs do Azure.
- Para obter informações sobre identidades gerenciadas, confira O que são identidades gerenciadas para recursos do Azure?.
- Para saber como criar uma identidade gerenciada e dar a ela permissão para acessar os workspaces do Azure Databricks, consulte Configurar e usar a autenticação de identidades gerenciadas do Azure para automação do Azure Databricks.
Para autenticar usando a autenticação de identidades gerenciadas do Azure, adicione as seguintes definições às suas configurações de computação e a quaisquer configurações de capacidades de driver especiais ou avançadas:
Configuração | Valor |
---|---|
AuthMech |
11 |
Auth_Flow |
3 |
Auth_Client_ID |
A ID da identidade gerenciada do Azure. |
Azure_workspace_resource_id |
A ID do recurso do Azure para seu workspace do Azure Databricks. Para obter essa ID, na barra de navegação superior do seu workspace do Azure Databricks, clique no seu nome de usuário e, em seguida, clique em Portal do Azure. Na página de recursos do workspace do Azure Databricks que aparece, clique em Propriedades em Configurações na barra lateral. A ID está em Id em Essentials. |
Para criar um DSN para sistemas que não sejam Windows, use o seguinte 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 criar uma cadeia de conexão sem DSN, use o seguinte formato. Quebras de linha foram adicionadas para facilitar a leitura. A cadeia de caracteres não deve conter essas quebras de linha:
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 obter o valor de
<path-to-driver>
, confira Baixar e instalar o Driver ODBC do Databricks. - Para obter os valores de
<server-hostname>
e<http-path>
, confira Configurações de computação para o Driver ODBC do Databricks. - Você também pode adicionar configurações especiais ou avançadas de funcionalidades do driver.