Partilhar via


Monitorar e revogar tokens de acesso pessoal

Para autenticar na API REST do Azure Databricks, um usuário pode criar um token de acesso pessoal (PAT) e usá-lo em sua solicitação de API REST. Um usuário também pode criar uma entidade de serviço e usá-la com um token de acesso pessoal para chamar APIs REST do Azure Databricks em suas ferramentas de CI/CD e automação. Este artigo explica como os administradores do Azure Databricks podem gerenciar tokens de acesso pessoal em seu espaço de trabalho. Para criar um token de acesso pessoal, consulte Autenticação de token de acesso pessoal do Azure Databricks.

Use OAuth em vez de tokens de acesso pessoais

A Databricks recomenda que você use tokens de acesso OAuth em vez de PATs para maior segurança e conveniência. O Databricks continua a suportar PATs, mas devido ao seu maior risco de segurança, sugere-se que audite a utilização atual da PAT da sua conta e migre os seus utilizadores e entidades de serviço para tokens de acesso OAuth. Para criar um token de acesso OAuth (em vez de um PAT) para usar com uma entidade de serviço na automação, consulte Autenticar o acesso ao Azure Databricks com uma entidade de serviço usando OAuth (OAuth M2M).

O Databricks recomenda que você minimize a exposição do token de acesso pessoal com as seguintes etapas:

  1. Defina um tempo de vida curto para todos os novos tokens criados em seus espaços de trabalho. A vida útil deve ser inferior a 90 dias. Por padrão, o tempo de vida máximo para todos os novos tokens é de 730 dias (dois anos).
  2. Trabalhe com seus administradores e usuários do espaço de trabalho do Azure Databricks para alternar para esses tokens com tempos de vida mais curtos.
  3. Revogue todos os tokens de longa duração para reduzir o risco de esses tokens mais antigos serem usados indevidamente ao longo do tempo. O Databricks revoga automaticamente todos os PATs para seus espaços de trabalho do Azure Databricks quando o token não tiver sido usado em 90 ou mais dias.

Requisitos

Você deve ser um administrador para gerenciar tokens de acesso pessoal.

Os administradores de conta do Azure Databricks podem monitorar e revogar tokens de acesso pessoal em toda a conta.

Os administradores do espaço de trabalho do Azure Databricks podem fazer o seguinte:

  • Desative os tokens de acesso pessoal para uma área de trabalho.
  • Controle quais usuários não administradores podem criar tokens e usar tokens.
  • Defina um tempo de vida máximo para novos tokens.
  • Monitore e revogue tokens em seu espaço de trabalho.

A gestão de tokens de acesso pessoal na sua área de trabalho requer o plano Premium.

Monitorar e revogar tokens de acesso pessoal na conta

Importante

Este recurso está em Public Preview. Para participar dessa visualização, entre em contato com sua equipe de conta do Azure Databricks.

Os administradores de conta podem monitorizar e revogar tokens de acesso pessoais a partir da consola da conta. As consultas para monitorar tokens são executadas somente quando um administrador de conta usa a página de relatório de token.

  1. Para participar dessa visualização, primeiro entre em contato com sua equipe de conta do Azure Databricks.

  2. Como administrador de conta, inicie sessão na consola da conta .

  3. Na barra lateral, clique em Pré-visualizações.

  4. Use alternâncias Controle de alternância na posição Ativado. habilitar Relatório de Token de Acesso.

    Habilitar relatório de token de acesso.

  5. Na barra lateral, clique em Configurações e relatório de token.

    Você pode filtrar pelo proprietário do token, espaço de trabalho, data de criação, data de expiração e data em que o token foi usado pela última vez. Use os botões no topo do relatório para filtrar tokens de acesso para entidades principais inativas ou tokens de acesso sem data de validade.

    Exibir um relatório de token de acesso pessoal.

  6. Para exportar um relatório para um CSV, clique em Exportar.

  7. Para revogar um token, selecione um token e clique em Revogar.

    Revogar um token de acesso pessoal.

Habilitar ou desabilitar a autenticação de token de acesso pessoal para o espaço de trabalho

A autenticação de token de acesso pessoal é habilitada por padrão para todos os espaços de trabalho do Azure Databricks criados em 2018 ou posterior. Você pode alterar essa configuração na página de configurações do espaço de trabalho.

Quando os tokens de acesso pessoal são desabilitados para um espaço de trabalho, os tokens de acesso pessoal não podem ser usados para autenticar no Azure Databricks e os usuários do espaço de trabalho e as entidades de serviço não podem criar novos tokens. Nenhum token é excluído quando você desabilita a autenticação de token de acesso pessoal para um espaço de trabalho. Se os tokens forem reativados posteriormente, todos os tokens não expirados estarão disponíveis para uso.

Se quiser desabilitar o acesso ao token para um subconjunto de usuários, você pode manter a autenticação de token de acesso pessoal habilitada para o espaço de trabalho e definir permissões refinadas para usuários e grupos. Consulte Controlar quem pode criar e usar tokens de acesso pessoal.

Aviso

O Partner Connect e as integrações de parceiros exigem que os tokens de acesso pessoal sejam habilitados em um espaço de trabalho.

Para desativar a capacidade de criar e usar tokens de acesso pessoal para o espaço de trabalho:

  1. Vá para a página de configurações.

  2. Clique na guia Avançado .

  3. Clique no botão de alternância de Tokens de Acesso Pessoal .

  4. Clique em Confirmar.

    Esta alteração pode demorar alguns segundos a entrar em vigor.

Você também pode usar a API de configuração do espaço de trabalho para desabilitar tokens de acesso pessoais para o espaço de trabalho.

Controle quem pode criar e usar tokens de acesso pessoal

Os administradores da área de trabalho podem definir permissões em tokens de acesso pessoal para controlar que utilizadores, principais de serviço e grupos podem criar e utilizar tokens. Para obter detalhes sobre como configurar permissões de token de acesso pessoal, consulte Gerenciar permissões de token de acesso pessoal.

Definir tempo de vida máximo de novos tokens de acesso pessoal

Por padrão, o tempo de vida máximo de novos tokens é de 730 dias (dois anos). Você pode definir um tempo de vida máximo de token mais curto no seu workspace usando a CLI do Databricks ou a API de configuração do Workspace . Este limite aplica-se apenas a novos tokens.

Defina maxTokenLifetimeDays para o tempo de vida máximo do token de novos tokens em dias, como um inteiro. Por exemplo:

CLI do Databricks

databricks workspace-conf set-status --json '{
  "maxTokenLifetimeDays": "90"
}'

API de configuração do espaço de trabalho

curl -n -X PATCH "https://<databricks-instance>/api/2.0/workspace-conf" \
  -d '{
  "maxTokenLifetimeDays": "90"
  }'

Se você definir o maxTokenLifetimeDays como zero, novos tokens podem ser criados com uma vida útil de até 730 dias (dois anos).

Para usar o provedor Databricks Terraform para gerenciar o tempo de vida máximo de novos tokens em um espaço de trabalho, consulte databricks_workspace_conf Recurso.

Monitorar e revogar tokens no seu espaço de trabalho

Esta seção descreve como os administradores do espaço de trabalho podem usar o da CLI do Databricks para gerenciar tokens existentes no espaço de trabalho. Você também pode usar a API de Gerenciamento de Token. O Databricks revoga automaticamente os tokens de acesso pessoal que não foram usados em 90 ou mais dias.

Obter tokens para o espaço de trabalho

Para obter os tokens do espaço de trabalho:

Python

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

spark.createDataFrame([token.as_dict() for token in w.token_management.list()]).createOrReplaceTempView('tokens')

display(spark.sql('select * from tokens order by creation_time'))

Bash

# Filter results by a user by using the `created-by-id` (to filter by the user ID) or `created-by-username` flags.
databricks token-management list

Excluir (revogar) um token

Para excluir um token, substitua TOKEN_ID pelo id do token a ser excluído:

databricks token-management delete TOKEN_ID