Databricks autenticação de tokens de acesso pessoal
Databricks O acesso pessoal tokens (PATs) é usado para autenticar o acesso a recurso e APIs no nível Databricks workspace . Muitos mecanismos de armazenamento de credenciais e informações relacionadas, como variáveis de ambiente e perfis de Databricks configuração, oferecem suporte para Databricks acesso tokens pessoal. Embora os usuários possam ter vários acessos pessoais tokens em um Databricks workspace, cada token de acesso pessoal funciona apenas para um único Databricks workspace. O número de acessos pessoais tokens por usuário é limitado a 600 por workspace.
A Databricks revoga automaticamente os tokens de acesso pessoal que não foram usados em 90 dias ou mais.
Databricks recomenda o uso do OAuth em vez de PATs para autenticação e autorização do cliente account do usuário devido à maior segurança do OAuth. Para saber como usar OAuth para realizar a autenticação de cliente com um usuário Databricks account, consulte Autorizar acesso interativo a Databricks recurso com um usuário account usando OAuth (para autenticação do usuário account ).
A autenticação básica (não baseada em tokens) usando um nome de usuário e senha Databricks chegou ao fim da vida útil em 10 de julho de 2024.
Para automatizar a funcionalidade no nível da conta do Databricks, não é possível usar access tokens pessoais do Databricks. Em vez disso, você deve usar OAuth tokens para usuários administradores de accounts do Databricks ou entidades de serviço. Para saber mais, consulte:
- Autorizar o acesso autônomo a Databricks recurso com uma entidade de serviço usando OAuth
- Autorize o acesso interativo a Databricks recurso com um usuário account usando OAuth
Databricks acesso pessoal para usuários tokens workspace
Para criar um access token pessoal do Databricks para o usuário do workspace do Databricks, faça o seguinte:
-
Em seu workspace do Databricks, clique em seu nome de usuário do Databricks na barra superior e, em seguida, selecione Configurações no menu suspenso.
-
Clique em Desenvolvedor .
-
Ao lado de Access tokens , clique em Gerenciar .
-
Clique em Gerar novo token .
-
Digite um comentário que ajude o senhor a identificar esses tokens no futuro.
-
Definir o tempo de vida dos tokens em dias.
Se o senhor deixar a caixa duração da vida (días)) vazia, o tempo de vida dos tokens será definido como o tempo de vida máximo para o seu workspace. Em default, a vida útil máxima dos tokens para um workspace é de 730 dias. Consulte Definir a vida útil máxima dos novos tokens de acesso pessoal.
-
Clique em Gerar .
-
Copie o token exibido em um local seguro e clique em Concluído .
É importante que você salve o token copiado em um local seguro. Não compartilhe seu token copiado com outras pessoas. Se você perder o token, não poderá gerar de novo exatamente o mesmo token. Em vez disso, você deverá repetir esse procedimento para criar outro token. Se você perder o token copiado ou acreditar que o token foi comprometido, o Databricks recomenda que você exclua imediatamente esse token do workspace clicando no ícone da lixeira ( Revogar ) ao lado do token na página Access tokens .
Se o senhor não conseguir criar ou usar o site tokens no seu workspace, isso pode ocorrer porque o administrador do workspace desativou o tokens ou não lhe deu permissão para criar ou usar o tokens. Consulte o administrador do site workspace ou os tópicos a seguir:
Databricks acesso pessoal para entidade de serviço tokens
Etapa 1: como administrador da Databricks, crie um PAT para sua entidade de serviço da Databricks na CLI
Um administrador de workspace pode criar tokens de acesso pessoal do Databricks em nome de uma entidade de serviço usando a CLI, como segue:
-
Configure a autenticação para o Databricks CLI, caso ainda não tenha feito isso.
-
Obtenha o ID do aplicativo para a entidade do serviço Databricks, caso ainda não o tenha disponível:
- Se o console de administração do seu workspace ainda não estiver aberto, clique no seu nome de usuário na barra superior do workspace e clique em Configurações .
- Em Administração do workspace , clique em Identidade e acesso .
- Ao lado de Entidades de serviço , clique em Gerenciar .
- Clique no nome da entidade de serviço do Databricks para abrir sua página de configurações. Se o nome não estiver visível, use Filtrar entidades de serviço para localizá-la.
- Na guia Configurações , observe o valor da ID do aplicativo .
-
Use a CLI do Databricks para executar o comando a seguir, que gera o token de acesso para a entidade de serviço do Databricks.
executar o seguinte comando:
Bashdatabricks token-management create-obo-token <application-id> --lifetime-seconds <lifetime-seconds> --comment <comment> -p <profile-name>
- Substitua
<application-id>
pela ID do aplicativo da entidade de serviço do Databricks. --lifetime-seconds
: Substitua<lifetime-seconds>
pelo número de segundos para os quais os tokens de acesso são válidos. Por exemplo, 1 dia equivale a 86.400 segundos. Se a opção--lifetime-seconds
não for especificada, os tokens de acesso serão definidos para o tempo máximo de vida do seu workspace. Em default, a vida útil máxima dos tokens para um workspace é de 730 dias.--comment
: Substitua<comment>
por um comentário significativo sobre a finalidade dos tokens de acesso. Se a opção--comment
não for especificada, nenhum comentário será gerado.--profile-name
: Substitua<profile-name>
pelo nome de um perfil de configuração Databricks que contenha informações de autenticação para a Databricks entidade de serviço e o destino workspace. Se a opção-p
não for especificada, a CLI do Databricks tentará localizar e usar um perfil de configuração denominadoDEFAULT
.
- Substitua
-
Na resposta, copie o valor de
token_value
, que é o token de acesso para sua entidade de serviço do Databricks.É importante que você salve o token copiado em um local seguro. Não compartilhe seu token copiado com outras pessoas. Se você perder o token, não poderá gerar de novo exatamente o mesmo token. Em vez disso, você deverá repetir o procedimento para criar outro token.
Se você não conseguir criar ou usar tokens no seu workspace, isso pode ser porque o administrador desativou os tokens ou não concedeu permissão a você. Consulte o administrador do workspace ou o seguinte:
Etapa 2: Crie PATs adicionais para sua entidade de serviço
Após a criação de um PAT para a entidade de serviço da Databricks, o senhor pode usar esse PAT para criar tokens de acesso pessoal adicionais da Databricks para a entidade de serviço, como segue:
Este procedimento pressupõe que o senhor já tenha gerado os primeiros Databricks tokens de acesso pessoal para a Databricks entidade de serviço. O senhor usa esses tokens de acesso para configurar o Databricks CLI para autenticar a Databricks entidade de serviço, de modo que ela possa gerar acesso adicional tokens para si mesma. Consulte Databricks autenticação de tokens de acesso pessoal.
-
Use a CLI do Databricks para executar o comando a seguir, que gera outro token de acesso para a entidade de serviço do Databricks.
executar o seguinte comando:
Bashdatabricks tokens create --comment <comment> --lifetime-seconds <lifetime-seconds> -p <profile-name>
--comment
: Substitua<comment>
por um comentário significativo sobre a finalidade dos tokens de acesso. Se a opção--comment
não for especificada, nenhum comentário será gerado.--lifetime-seconds
: Substitua<lifetime-seconds>
pelo número de segundos para os quais os tokens de acesso são válidos. Por exemplo, 1 dia equivale a 86.400 segundos. Se a opção--lifetime-seconds
não for especificada, os tokens de acesso serão definidos para o tempo máximo de vida do seu workspace. Em default, a vida útil máxima dos tokens para um workspace é de 730 dias.--profile-name
: Substitua<profile-name>
pelo nome de um perfil de configuração Databricks que contenha informações de autenticação para a Databricks entidade de serviço e o destino workspace. Se a opção-p
não for especificada, a CLI do Databricks tentará localizar e usar um perfil de configuração denominadoDEFAULT
.
-
Na resposta, copie o valor de
token_value
, que é o token de acesso para a entidade de serviço do Databricks.É importante que você salve o token copiado em um local seguro. Não compartilhe seu token copiado com outras pessoas. Se você perder o token, não poderá gerar de novo exatamente o mesmo token. Em vez disso, você deverá repetir o procedimento para criar outro token.
Se você não conseguir criar ou usar tokens no seu workspace, isso pode ser porque o administrador desativou os tokens ou não concedeu permissão a você. Consulte o administrador do workspace ou o seguinte:
Realizar a autenticação dos tokens de acesso pessoal Databricks
Para configurar a autenticação de access tokens pessoais do Databricks, você deve definir as seguintes variáveis de ambiente associadas, campos .databrickscfg
, campos Terraform ou campos Config
:
- O Databricks host, especificado como o Databricks workspace URL de destino, por
https://dbc-a1b2345c-d6e7.cloud.databricks.com
exemplo,. - O access token pessoal do Databricks, para a account de usuário do Databricks ou entidade de serviço do Databricks.
Para executar a autenticação de access token pessoal do Databricks, integre o seguinte em seu código, com base na ferramenta ou SDK participante:
- Environment
- Profile
- CLI
- Connect
To use environment variables for a specific Databricks authentication type with a tool or SDK, see Authorizing access to Databricks resources or the tool’s or SDK’s documentation. See also Environment variables and fields for client unified authentication and the Default methods for client unified authentication.
Set the following environment variables:
DATABRICKS_HOST
, set to the Databricks workspace URL, for examplehttps://dbc-a1b2345c-d6e7.cloud.databricks.com
.DATABRICKS_TOKEN
, set to the token string.
Create or identify a Databricks configuration profile with the following fields in your .databrickscfg
file. If you create the profile, replace the placeholders with the appropriate values. To use the profile with a tool or SDK, see Authorizing access to Databricks resources or the tool’s or SDK’s documentation. See also Environment variables and fields for client unified authentication and the Default methods for client unified authentication.
Set the following values in your .databrickscfg
file. In this case, the host is the Databricks workspace URL, for example https://dbc-a1b2345c-d6e7.cloud.databricks.com
:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
token = <token>
Instead of manually setting the preceding values in your .databrickscfg
file, you can use the Databricks CLI to set these values instead, as follows:
The following procedure uses the Databricks CLI to create a Databricks configuration profile with the name DEFAULT
. If you already have a DEFAULT
configuration profile, this procedure overwrites your existing DEFAULT
configuration profile.
To check whether you already have a DEFAULT
configuration profile, and to view this profile’s settings if it exists, use the Databricks CLI to run the command databricks auth env --profile DEFAULT
.
To create a configuration profile with a name other than DEFAULT
, replace the DEFAULT
part of --profile DEFAULT
in the following databricks configure
command with a different name for the configuration profile.
-
Use the Databricks CLI to create a Databricks configuration profile named
DEFAULT
that uses Databricks personal access token authentication. To do this, run the following command:Bashdatabricks configure --profile DEFAULT
-
For the prompt Databricks Host, enter your Databricks workspace instance URL, for example
https://dbc-a1b2345c-d6e7.cloud.databricks.com
. -
For the prompt Personal Access Token, enter the Databricks personal access token for your workspace.
For the Databricks CLI, run the databricks configure
command. At the prompts, enter the following settings:
- The Databricks host, specified as the target Databricks workspace URL, for example
https://dbc-a1b2345c-d6e7.cloud.databricks.com
. - The Databricks personal access token, for the Databricks user account or Databricks service principal.
For more details, see Databricks personal access token authentication.
Databricks personal access token authentication is supported on the following Databricks Connect versions:
-
For Python, Databricks Connect for Databricks Runtime 13.3 LTS and above.
-
For Scala, Databricks Connect for Databricks Runtime 13.3 LTS and above.
For Databricks Connect, you can use the Databricks CLI to set the values in your .databrickscfg
file, for Databricks workspace-level operations as specified in this article’s “Profile” section, as follows:
The following procedure uses the Databricks CLI to create a Databricks configuration profile with the name DEFAULT
. If you already have a DEFAULT
configuration profile, this procedure overwrites your existing DEFAULT
configuration profile.
To check whether you already have a DEFAULT
configuration profile, and to view this profile’s settings if it exists, use the Databricks CLI to run the command databricks auth env --profile DEFAULT
.
To create a configuration profile with a name other than DEFAULT
, replace the DEFAULT
part of --profile DEFAULT
in the databricks configure
command as shown in the following step with a different name for the configuration profile.
-
Use the Databricks CLI to create a Databricks configuration profile named
DEFAULT
that uses Databricks personal access token authentication. To do this, run the following command:Bashdatabricks configure --configure-cluster --profile DEFAULT
-
For the prompt Databricks Host, enter your Databricks workspace instance URL, for example
https://dbc-a1b2345c-d6e7.cloud.databricks.com
. -
For the prompt Personal Access Token, enter the Databricks personal access token for your workspace.
-
In the list of available clusters that appears, use your up arrow and down arrow keys to select the target Databricks cluster in your workspace, and then press
Enter
. You can also type any part of the cluster’s display name to filter the list of available clusters.
Usar a API REST da Databricks para emitir tokens de acesso pessoal
Databricks fornece um REST endpoint /api/2.0/token/create
para emitir PATs. Consulte Criar tokens de usuário para obter detalhes em API.
O senhor deve fornecer valores específicos para a API REST. No exemplo a seguir, defina esses valores:
- Substitua
<databricks-instance>
pelo URL Databricks workspace . Por exemplo,dbc-abcd1234-5678.cloud.databricks.com
. - Substitua
<your-existing-access-token>
por um PAT (strings) válido existente que tenha permissões para criar novos tokens.
Forneça os valores para esses parâmetros:
comment
: Uma descrição para os novos tokens.lifetime_seconds
: O tempo de vida dos tokens em segundos.
curl -X POST https://<databricks-instance>/api/2.0/token/create \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
"comment": "New PAT using DB API",
"lifetime_seconds": <lifetime-of-pat-in-seconds>
}'
O sinalizador -d
fornece o payload JSON para a solicitação.
Se for bem-sucedido, isso resultará em uma carga de resposta semelhante a:
{
"access_token": "<your-newly-issued-pat>",
"token_type": "Bearer",
"expires_in": <the-duration-of-the-new-pat>
}
Forneça os novos tokens da resposta no cabeçalho Authorization das chamadas subsequentes para Databricks REST APIs. Por exemplo:
# This example uses a simple GET. For POST or other REST verbs, you may need to provide additional parameters.
curl -X GET "https://<databricks-instance>/api/2.0/<path-to-endpoint>" \
-H "Authorization: Bearer <your-new-pat>"
import requests
headers = {
'Authorization': 'Bearer <your-new-pat>'
}
# This example is for an HTTP GET operation.
response = requests.get('https://<databricks-instance>/api/2.0/<path-to-endpoint>', headers=headers)