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, faça o seguinte:

  1. No seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador do Azure Databricks na barra superior e, em seguida, selecione Definições na lista pendente.
  2. Clique em Desenvolvedor.
  3. Ao lado de Tokens de acesso, clique em Gerenciar.
  4. Clique em Gerar novo token.
  5. (Opcional) Insira um comentário que o ajude a identificar esse token no futuro e altere o tempo de vida padrão do token de 90 dias. Para criar um token sem tempo de vida (não recomendado), deixe a caixa Tempo de vida (dias) vazia (em branco).
  6. Clique em Generate (Gerar).
  7. Copie o token exibido para um local seguro e clique em Concluído.

Nota

Certifique-se de salvar o token copiado em um local seguro. Não partilhe o seu token copiado com outras pessoas. Se você perder o token copiado, não poderá regenerar exatamente o mesmo token. Em vez disso, você deve repetir esse procedimento para criar um novo token. Se você perder o token copiado ou acreditar que o token foi comprometido, o Databricks recomenda que você exclua imediatamente esse token do seu espaço de trabalho clicando no ícone da lixeira (Revogar) ao lado do token na página de tokens do Access.

Se você não conseguir criar ou usar tokens em seu espaço de trabalho, isso pode ser porque o administrador do espaço de trabalho desabilitou tokens ou não lhe deu permissão para criar ou usar tokens. Consulte o administrador do espaço de trabalho ou os seguintes tópicos:

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:

Definição Value
AuthMech 3
UID token
PWD O token de acesso pessoal Databricks para o usuário 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 ID 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:

Definição Value
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-through seções no Databricks ODBC Driver Guide.

Tokens OAuth 2.0

O driver ODBC 2.7.5 e superior oferece suporte a um token OAuth 2.0 para uma entidade de serviço Microsoft Entra ID. Isso também é conhecido como autenticação de passagem de token OAuth 2.0.

Importante

Suporte ao driver ODBC 2.7.5 e superior usando segredos OAuth do Azure Databricks para criar 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 de passagem de token OAuth 2.0, adicione as seguintes configurações às suas configurações de computação e quaisquer configurações de capacidade de driver especiais ou avançadas:

Definição Value
AuthMech 11
Auth_Flow 0
Auth_AccessToken O token OAuth do Azure Databricks

(Os tokens de ID do Microsoft Entra não são suportados para autenticação de passagem de token 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-through seções no Databricks ODBC Driver Guide.

Databricks OAuth autenticação user-to-machine (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:

Definição Value
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 Based seções no Databricks ODBC Driver Guide.

Autenticação U2M (U2M) do Microsoft Entra ID OAuth

O driver ODBC 2.8.2 e superior oferece suporte à autenticação U2M (U2M) do Microsoft Entra ID OAuth para um usuário 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:

Definição Value
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 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. 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 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 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 seu segredo OAuth, consulte Autenticar o acesso ao Azure Databricks com uma entidade de serviço usando OAuth (OAuth M2M). Anote o valor UUID ou ID do aplicativo da entidade de serviço e o valor Secret do segredo OAuth da entidade de serviço.

  2. Dê à entidade de serviço acesso ao seu cluster ou depósito. Consulte Permissões de computação ou Gerenciar um armazém SQL.

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

Definição Value
AuthMech 11
Auth_Flow 1
Auth_Client_ID O valor UUID/Application ID da entidade de serviç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 Credentials seçõ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 superior oferece suporte à autenticação máquina a máquina (M2M) do Entra ID OAuth para uma entidade 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ê à entidade de serviço acesso ao seu cluster ou depósito. Consulte Permissões de computação ou Gerenciar um armazém 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:

Definição Value
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:

Definição Value
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 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>