Share via


Obter tokens do Microsoft Entra ID (anteriormente Azure Ative Directory) para usuários usando a CLI do Azure

Importante

Este artigo descreve como criar manualmente tokens do Microsoft Entra ID (anteriormente Azure Ative Directory) para usuários usando a CLI do Azure.

O Databricks não recomenda que você crie tokens do Microsoft Entra ID (anteriormente Azure Ative Directory) para usuários do Azure Databricks manualmente. Isso ocorre porque cada token de ID do Microsoft Entra é de curta duração, normalmente expirando dentro de uma hora. Após esse período, você deve gerar manualmente um token de ID do Microsoft Entra de substituição. Em vez disso, use uma das ferramentas participantes ou SDKs que implementam o padrão de autenticação unificada do cliente Databricks. Essas ferramentas e SDKs geram e substituem automaticamente tokens de ID do Microsoft Entra expirados para você, aproveitando a autenticação da CLI do Azure.

Você pode usar a CLI do Azure para obter tokens de acesso do Microsoft Entra ID para usuários.

Nota

Você também pode definir uma entidade de serviço no Azure Ative Directory e, em seguida, obter um token de acesso do Microsoft Entra ID para essa entidade de serviço em vez de para um usuário. Consulte Obter tokens do Microsoft Entra ID (anteriormente Azure Ative Directory) para entidades de serviço.

  1. Obtenha a ID de assinatura do Azure correta para sua conta de usuário, se você ainda não souber essa ID, seguindo um destes procedimentos:

    • Na barra de navegação superior do seu espaço de trabalho do Azure Databricks, clique no seu nome de utilizador e, em seguida, clique em Portal do Azure. Na página de recursos do espaço de trabalho do Azure Databricks exibida, clique em Visão geral na barra lateral. Em seguida, procure o campo ID da assinatura, que contém a ID da assinatura.

    • Use a CLI do Azure para executar o comando az databricks workspace list, usando as --query opções e ou --output-o para restringir os resultados. Substitua adb-0000000000000000.0.azuredatabricks.net pelo nome da instância do espaço de trabalho, não incluindo o https://arquivo . Neste exemplo, o depois /subscriptions/ na saída é o 00000000-0000-0000-0000-000000000000 ID da assinatura.

      az databricks workspace list --query "[?workspaceUrl==\`adb-0000000000000000.0.azuredatabricks.net\`].{id:id}" -o tsv
      
      # /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-rg/providers/Microsoft.Databricks/workspaces/my-ws
      

      Se a seguinte mensagem for exibida, você está conectado ao locatário errado: The subscription of '<subscription-id>' doesn't exist in cloud 'AzureCloud'. Para entrar no locatário correto, você deve executar o comando novamente, usando a -t opção ou --tenant para especificar o az login ID de locatário correto.

      Você pode obter a ID do locatário para um espaço de trabalho do Azure Databricks executando o comando curl -v <per-workspace-URL>/aad/auth e procurando na saída < location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000, onde 00000000-0000-0000-0000-000000000000 é a ID do locatário. Consulte também Obter IDs de assinatura e locatário no portal do Azure.

      az login -t <tenant-id>
      
  2. Depois de ter a ID de assinatura do Azure correta para sua conta de usuário, comece a entrar no Azure usando a CLI do Azure para executar o comando az login. Depois de executar este comando, siga as instruções no ecrã para concluir o início de sessão com a sua conta.

    az login
    
  3. Confirme que tem sessão iniciada na subscrição correta para o utilizador com sessão iniciada. Para fazer isso, execute o comando az account set, usando a -s opção ou --subscription para especificar o ID de assinatura correto.

    az account set -s <subscription-id>
    
  4. Gere seu token de acesso do Microsoft Entra ID (anteriormente Azure Ative Directory) executando o comando az account get-access-token . Use a opção para especificar a --resource ID de recurso exclusiva para o serviço Azure Databricks, que é 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d. Você pode exibir apenas o valor do token de ID do Microsoft Entra na saída do comando usando as --query opções e -o ou --output .

    az account get-access-token \
    --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d \
    --query "accessToken" \
    -o tsv
    

Nota

A CLI do Azure baseada em MSAL usa a Biblioteca de Autenticação da Microsoft (MSAL) como a biblioteca de autenticação subjacente. Se você não conseguir usar com êxito o token de acesso do Microsoft Entra ID gerado pela CLI do Azure, como alternativa, você pode tentar usar o MSAL diretamente para obter um token de acesso do Microsoft Entra ID para um usuário. Consulte Obter tokens do Microsoft Entra ID (anteriormente Azure Ative Directory) para usuários usando o MSAL.