Configurações de autenticação para o driver ODBC do Databricks

Este artigo descreve como definir as configurações de autenticação do Databricks para o driver ODBC do Databricks.

Este artigo pressupõe que você já reuniu as seguintes configurações adicionais para adicionar às configurações de autenticação conforme descrito neste artigo:

Para configurar uma conexão do Databricks para o driver ODBC do Databricks, você deve combinar suas configurações de recursos compute , quaisquer configurações de capacidade do driver e as configurações de autenticação a seguir em um DSN (nome de fonte de dados) ODBC ou em uma strings de conexão sem DSN.

O uso de strings de conexão DSN ou sem DSN dependerá dos requisitos do aplicativo, ferramenta, cliente, SDK ou API de destino. Exemplos de strings de conexão DSNs e sem DSN são fornecidos nestes artigos para cada tipo de autenticação do Databricks compatível.

O driver ODBC do Databricks dá suporte aos seguintes tipos de autenticação do Databricks:

access tokenpessoal do Databricks

Para criar um access token pessoal do Databricks, faça o seguinte:

  1. No workspace do Databricks, clique no nome de usuário do Databricks na barra superior e selecione Configurações do usuário na lista suspensa.

  2. Clique em Desenvolvedor.

  3. Ao lado do access token, clique em gerenciar.

  4. Clique em Gerar novos tokens.

  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 vida útil (não recomendado), deixe a caixa Duração (dias) vazia (em branco).

  6. Clique em Gerar.

  7. Copie o token exibido em um local seguro e clique em Concluído.

Observação

Certifique-se de salvar os tokens copiados em um local seguro. Não compartilhe seus tokens copiados com outras pessoas. Se você perder os tokens copiados, não poderá regenerar exatamente os mesmos tokens. Em vez disso, você deve repetir este procedimento para criar novos tokens. Se você perder os tokens copiados ou acreditar que os tokens foram comprometidos, o Databricks recomenda fortemente que você exclua imediatamente esses tokens do seu workspace clicando no ícone da lixeira (Revogar) ao lado dos tokens na página access tokens .

Se não for possível criar ou usar tokens no seu workspace, isso pode ocorrer porque o administrador do workspace desativou os tokens ou não lhe deu permissão para criar ou usar tokens. Consulte o administrador do workspace ou o seguinte:

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

Contexto

Valor

AuthMech

3

UID

token

PWD

O access token pessoal do Databricks para o usuário do seu workspace.

Para criar um DSN para sistemas não 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 strings de conexão sem DSN, use o formato a seguir. Quebras de linha foram adicionadas para facilitar a leitura. As strings não devem 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>

Nome de usuário e senha do Databricks

A autenticação de nome de usuário e senha do Databricks também é conhecida como autenticação básica do Databricks.

A autenticação por nome de usuário e senha só é possível se o logon único estiver desativado.

Para autenticar usando um nome de usuário e senha do Databricks, adicione as seguintes configurações às configurações de computação e quaisquer configurações especiais ou avançadas de capacidade do driver:

Contexto

Valor

AuthMech

3

UID

O nome de usuário.

PWD

A senha.

Para criar um DSN para sistemas não 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=<username>
PWD=<password>

Para criar strings de conexão sem DSN, use o formato a seguir. Quebras de linha foram adicionadas para facilitar a leitura. As strings não devem conter estas quebras de linha:

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

Tokens OAuth 2.0

O driver ODBC 2.7.5 e acima oferece suporte a tokens OAuth 2.0 para um usuário ou entidade de serviço do Databricks. Isso também é conhecido como autenticação de passagemtokens OAuth 2.0.

Para criar tokens OAuth 2.0 para autenticação de passagem tokens , faça o seguinte:

Para autenticar usando a autenticação de passagem tokens OAuth 2.0, adicione as seguintes configurações às configurações de computação e quaisquer configurações especiais ou avançadas de capacidade do driver:

Contexto

Valor

AuthMech

11

Auth_Flow

0

Auth_AccessToken

Os tokens OAuth 2.0.

Para criar um DSN para sistemas não 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=<oauth-token>

Para criar strings de conexão sem DSN, use o formato a seguir. Quebras de linha foram adicionadas para facilitar a leitura. As strings não devem 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=<oauth-token>

Para obter mais informações, consulte as seções Token Pass-through no guia do driver ODBC do Databricks.

Autenticação de usuário para máquina (U2M) OAuth

O driver ODBC 2.7.5 e acima oferece suporte à autenticação usuário-máquina (U2M) OAuth para um usuário do 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 uma vida útil default de 1 hora. A autenticação baseada em navegador OAuth U2M ou OAuth 2.0 deve refresh automaticamente os tokens expirados do OAuth 2.0 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 clouds .

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

Configuração

Valor

AuthMech

11

Auth_Flow

2

PWD

Uma senha de sua escolha. O driver usa essa key para refresh tokens criptografia .

OAuth2ClientId (opcional)

power-bi,tableau-desktop,databricks-cli, databricks-sql-python,databricks-sql-jdbc, databricks-sql-odbc,databricks-dbt-adapter, databricks-sql-connector (padrão)

Auth_Scope (opcional)

sql,offline_access (padrão)

Para criar um DSN para sistemas não 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 strings de conexão sem DSN, use o formato a seguir. Quebras de linha foram adicionadas para facilitar a leitura. As strings não devem 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 seções Browser Based no guia do driver ODBC do Databricks.

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

O driver ODBC 2.7.5 e acima dá suporte à autenticação OAuth máquina a máquina (M2M) para uma entidade de serviço do Databricks. Isso também é conhecido como autenticação de credenciais do cliente OAuth 2.0.

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

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

    Para criar a entidade de serviço e seu segredo OAuth, consulte Autenticação OAuth máquina a máquina (M2M). Anote o valor do UUID da entidade de serviço ou do ID do aplicativo e o valor do segredo do OAuth da entidade de serviço.

  2. Permitir que a entidade de serviço tenha acesso a seus clusters ou armazéns. Consulte as permissões do sitecompute ou gerenciar a SQL warehouse.

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 especiais ou avançadas de capacidade do driver:

Contexto

Valor

AuthMech

11

Auth_Flow

1

Auth_Client_Id

O valor UUID/ID do aplicativo da entidade de serviço.

Auth_Client_Secret

O valor secreto OAuth da entidade de serviço.

OAuth2ClientId (opcional)

power-bi,tableau-desktop,databricks-cli, databricks-sql-python,databricks-sql-jdbc, databricks-sql-odbc,databricks-dbt-adapter, databricks-sql-connector (padrão)

Auth_Scope (opcional)

all-apis (padrão)

Para criar um DSN para sistemas não 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 strings de conexão sem DSN, use o formato a seguir. Quebras de linha foram adicionadas para facilitar a leitura. As strings não devem 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 seções Client Credentials no guia do driver ODBC do Databricks.