Partilhar via


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 aos seguintes tipos de autenticação do Azure Databricks:

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 espaço de trabalho.

Para autenticar usando um token de acesso pessoal do Azure Databricks, adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade de driver especiais ou avançadas:

Configuração Valor
AuthMech 3
UID token
PWD O token de acesso pessoal do Databricks para o utilizador do espaço de trabalho

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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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>

Token de Identificação do Microsoft Entra

O driver ODBC 2.6.15 e superior oferece suporte a tokens de ID do Microsoft Entra 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:

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, consulte a seção Configuring Authentication on Windows > Providing a New Access Token no Guia do driver ODBC do Databricks.

Para autenticar usando um token de ID do Microsoft Entra, adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade de driver especiais ou avançadas:

Configuração Valor
AuthMech 11
Auth_Flow 0
Auth_AccessToken O token de ID do Microsoft Entra

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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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 mais informações, consulte as Token Pass-throughseções no Databricks ODBC Driver Guide.

Tokens OAuth 2.0

O driver ODBC 2.7.5 e versões superiores oferece suporte a um token OAuth 2.0 para um principal de serviço Microsoft Entra ID. Isso também é conhecido como autenticação de passagem de token OAuth 2.0.

Importante

O driver ODBC versão 2.7.5 e superior suporta o uso de segredos OAuth do Azure Databricks para gerar tokens OAuth 2.0. Os segredos de ID do Microsoft Entra não são suportados.

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 este processo.

Para autenticar usando a autenticação por passagem de token do 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 capacidade de driver:

Configuração Valor
AuthMech 11
Auth_Flow 0
Auth_AccessToken O token de OAuth do Azure Databricks
(Os tokens de ID do Microsoft Entra não são suportados para autenticação por 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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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 mais informações, consulte as Token Pass-throughseções no Databricks ODBC Driver Guide.

Databricks OAuth autenticação utilizador-para-máquina (U2M)

O driver ODBC 2.8.2 e superior dá suporte à autenticação de usuário para máquina (U2M) OAuth 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 os tokens OAuth 2.0 expirados para você automaticamente.

Nota

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 em nuvem.

Para autenticar usando a autenticação OAuth user-to-machine (U2M) ou OAuth 2.0 baseada em navegador, adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade de driver especiais ou avançadas:

Configuração Valor
AuthMech 11
Auth_Flow 2
PWD Uma palavra-passe à 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 em Configurações de conexões de aplicativo no Console de Conta do Databricks Consulte 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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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 mais informações, consulte as Browser Basedseções no Databricks ODBC Driver Guide.

Autenticação de utilizador para máquina (U2M) do Microsoft Entra ID OAuth

O driver ODBC 2.8.2 e superior oferece suporte à autenticação de utilizador para máquina (U2M) do Microsoft Entra ID OAuth para um utilizador do Azure Databricks.

Para usar o Microsoft Entra ID OAuth user-to-machine (U2M), o cliente OAuth (aplicativo) deve ser registrado no Microsoft Entra ID, consulte as instruções.

Para autenticar usando o Microsoft Entra ID OAuth user-to-machine (U2M), adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade de driver especiais ou avançadas:

Configuração Valor
AuthMech 11
Auth_Flow 2
PWD Uma palavra-passe à 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 da aplicação 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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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>;

Autenticação OAuth máquina-a-máquina (M2M)

O driver ODBC dá suporte à autenticação OAuth máquina-a-máquina (M2M) para um principal de serviço do Azure Databricks. Isso também é conhecido como autenticação por credenciais de cliente OAuth 2.0 .

Para configurar a autenticação de credenciais de cliente OAuth M2M ou OAuth 2.0, faça o seguinte:

  1. Crie uma entidade de serviço do Azure Databricks em seu espaço de trabalho do Azure Databricks e crie um segredo OAuth para essa entidade de serviço.

    Para criar a entidade de serviço e o seu segredo OAuth, veja Autorizar acesso não assistido aos recursos do Azure Databricks com uma entidade de serviço usando OAuth. Anote o valor do UUID ou do ID da Aplicação do principal de serviço e o valor do Segredo para o segredo OAuth do principal de serviço.

  2. Dê ao principal de serviço acesso ao seu cluster ou armazém. Consulte Permissões de computação ou Gerir um armazém SQL.

Para autenticar usando OAuth máquina a máquina (M2M) ou autenticação de credenciais de cliente OAuth 2.0, adicione as seguintes configurações às suas configurações de computação e a quaisquer configurações de capacidade de driver especiais ou avançadas:

Configuração Valor
AuthMech 11
Auth_Flow 1
Auth_Client_ID O valor do UUID do serviço principal e o ID da Aplicação.
Auth_Client_Secret O valor OAuth Secret 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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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 mais informações, consulte as Client Credentialsseções no Databricks ODBC Driver Guide.

Autenticação de máquina a máquina (M2M) do Microsoft Entra ID OAuth

O driver ODBC 2.8.2 e versões superiores oferece suporte à autenticação máquina a máquina (M2M) do Entra ID OAuth para um principal de serviço do Microsoft Entra ID.

Para configurar a autenticação máquina a máquina (M2M) do Entra ID OAuth, faça o seguinte:

  1. Crie uma entidade de serviço gerenciada do Microsoft Entra ID. Para fazer isso, consulte Gerenciar entidades de serviço.
  2. Dê ao principal de serviço acesso ao seu cluster ou armazém. Consulte Permissões de computação ou Gerir um armazém de dados SQL.

Para autenticar usando o Entra ID OAuth máquina-a-máquina (M2M), adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade de driver especiais ou avançadas:

Configuração Valor
AuthMech 11
Auth_Flow 1
Auth_Client_ID ID do aplicativo da entidade de serviço no Entra ID
Auth_Client_Secret O segredo do cliente da entidade de serviço no Entra ID. Este é o segredo do cliente que você cria em Certificados & 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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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

Autenticação de identidades gerenciadas do Azure

O driver ODBC 2.7.7 e superior dá suporte à autenticação de identidades gerenciadas do Azure, que usa identidades gerenciadas para recursos do Azure (anteriormente Managed Service Identities (MSI)) para autenticar com o Azure Databricks. As chamadas programáticas para operações de espaço de trabalho do Azure Databricks usam essas identidades gerenciadas ao trabalhar com recursos do Azure que dão suporte a identidades gerenciadas, como VMs do Azure.

Para autenticar usando a autenticação de identidades gerenciadas do Azure, adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade 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 O ID do recurso do Azure para o seu espaço de trabalho do Azure Databricks.
Para obter essa ID, na barra de navegação superior do espaço de trabalho do Azure Databricks, clique em seu nome de usuário e, em seguida, clique em
Portal do Azure. Na página de recursos do espaço de trabalho do Azure Databricks exibida, clique em Propriedades em Configurações na barra lateral. O 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. Foram adicionadas quebras de linha para facilitar a leitura. A cadeia de caracteres não deve conter estas 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>