Obter tokens do Microsoft Entra ID para usuários usando a CLI do Azure
Importante
Esse artigo descreve como criar manualmente tokens do Microsoft Entra ID para usuários usando a CLI do Azure.
O Databricks não recomenda que você crie manualmente os tokens do Microsoft Entra ID para os usuários do Azure Databricks. Isso ocorre porque cada token do Microsoft Entra ID tem curta duração, normalmente expirando em uma hora. Após esse tempo, você precisará gerar manualmente um token de substituição do Microsoft Entra ID. Em vez disso, use uma das ferramentas ou SDKs participantes que implementam o padrão de autenticação unificada do cliente Databricks. Essas ferramentas e SDKs geram e substituem automaticamente tokens expirados do Microsoft Entra ID para você, aproveitando a autenticação da CLI do Azure.
Você pode usar a CLI do Azure para receber o token de acesso do Microsoft Entra ID para usuários.
Observação
Você também pode definir uma entidade de serviço no Azure Active Directory e, em seguida, obter um token de acesso do Microsoft Entra ID para essa entidade de serviço, em vez de um usuário. Consulte Obter tokens do Microsoft Entra ID para entidades de serviço.
Obtenha a ID de assinatura correta do Azure para sua conta de usuário, se você ainda não conhece essa ID, fazendo um dos seguintes procedimentos:
Na barra de navegação superior do workspace do Azure Databricks, clique em seu nome de usuário e clique no Portal do Azure. Na página de recursos do workspace 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 opções
--query
e-o
ou--output
para restringir os resultados. Substituaadb-0000000000000000.0.azuredatabricks.net
pelo nome da instância do workspace, sem incluir ohttps://
. Neste exemplo, o00000000-0000-0000-0000-000000000000
após/subscriptions/
na saída é a 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 é 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, execute o comandoaz login
novamente usando a opção-t
ou--tenant
para especificar a ID de locatário correta.Você pode obter a ID do locatário de um workspace do Azure Databricks executando o comando
curl -v <per-workspace-URL>/aad/auth
e examinando a saída< location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000
, em que00000000-0000-0000-0000-000000000000
é a ID do locatário. Veja também Obter IDs de assinatura e locatário no portal do Azure.az login -t <tenant-id>
Depois de ter a ID de assinatura correta do Azure 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 esse comando, siga as instruções na tela para concluir a entrada com sua conta.
az login
Confirme se você está conectado à assinatura correta para o usuário conectado. Para fazer isso, execute o comando az account set, usando a opção
-s
ou--subscription
para especificar a ID da assinatura correta.az account set -s <subscription-id>
Gere seu token de acesso do Microsoft Entra ID executando o comando az account get-access-token. Use a opção
--resource
para especificar a ID de recurso exclusiva para o serviço do Azure Databricks, que é2ff814a6-3304-4ab8-85cb-cd0e6f879c1d
. Exiba apenas o valor do token do Microsoft Entra ID na saída do comando usando as opções--query
,-o
ou--output
.az account get-access-token \ --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d \ --query "accessToken" \ -o tsv
Observação
A CLI do Azure baseada em MSAL usa a MSAL (Biblioteca de Autenticação da Microsoft) como a biblioteca de autenticação subjacente. Se você não conseguir usar com sucesso o token de acesso do Microsoft Entra ID que a CLI do Azure gera, como alternativa, você poderá tentar usar a MSAL diretamente para obter um token de acesso do Microsoft Entra ID para um usuário. Consulte Obter tokens do Microsoft Entra ID para usuários usando MSAL.