Hämta Microsoft Entra-ID-token för användare med hjälp av Azure CLI
Viktigt!
Den här artikeln beskriver hur du manuellt skapar Microsoft Entra-ID-token för användare med hjälp av Azure CLI.
Databricks rekommenderar inte att du skapar Microsoft Entra-ID-token för Azure Databricks-användare manuellt. Detta beror på att varje Microsoft Entra-ID-token är kortlivad och vanligtvis upphör att gälla inom en timme. Efter den här tiden måste du manuellt generera en ersättningstoken för Microsoft Entra-ID. Använd i stället något av de deltagande verktygen eller SDK:erna som implementerar Databricks-klientens enhetliga autentiseringsstandard . Dessa verktyg och SDK:er genererar och ersätter automatiskt förfallna Microsoft Entra-ID-token åt dig och utnyttjar Azure CLI-autentisering.
Du kan använda Azure CLI- för att hämta Åtkomsttoken för Microsoft Entra-ID för användare.
Kommentar
Du kan också definiera ett tjänsthuvudnamn i Azure Active Directory och sedan hämta en Microsoft Entra ID-åtkomsttoken för det tjänsthuvudnamnet i stället för en användare. Se Hämta Microsoft Entra-ID-token för tjänstens huvudnamn.
Hämta rätt Azure-prenumerations-ID för ditt användarkonto, om du inte redan känner till det här ID:t, genom att göra något av följande:
I azure Databricks-arbetsytans övre navigeringsfält klickar du på ditt användarnamn och klickar sedan på Azure-portalen. På resurssidan för Azure Databricks-arbetsytan som visas klickar du på Översikt i sidofältet. Leta sedan efter fältet Prenumerations-ID, som innehåller prenumerations-ID:t.
Använd Azure CLI för att köra kommandot az databricks workspace list, med alternativen
--query
och-o
eller--output
för att begränsa resultaten. Ersättadb-0000000000000000.0.azuredatabricks.net
med namnet på din arbetsyteinstans, exklusivehttps://
. I det här exemplet00000000-0000-0000-0000-000000000000
är efter/subscriptions/
i utdata prenumerations-ID:t.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
Om följande meddelande visas är du inloggad på fel klientorganisation:
The subscription of '<subscription-id>' doesn't exist in cloud 'AzureCloud'.
Om du vill logga in på rätt klientorganisation måste du köraaz login
kommandot igen med hjälp av-t
alternativet eller--tenant
för att ange rätt klientorganisations-ID.Du kan hämta tenant-ID:t för en Azure Databricks-arbetsyta genom att köra kommandot
curl -v <per-workspace-URL>/aad/auth
och leta efter00000000-0000-0000-0000-000000000000
i utdata< location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000
, där00000000-0000-0000-0000-000000000000
är tenant-ID:t. Se även Hämta prenumerations- och klient-ID:t i Azure-portalen.az login -t <tenant-id>
När du har rätt Azure-prenumerations-ID för ditt användarkonto börjar du logga in på Azure med hjälp av Azure CLI för att köra kommandot az login . När du har kört det här kommandot följer du anvisningarna på skärmen för att slutföra inloggningen med ditt konto.
az login
Bekräfta att du är inloggad på rätt prenumeration för den inloggade användaren. Det gör du genom att köra kommandot az account set med hjälp av alternativet
-s
eller--subscription
för att ange rätt prenumerations-ID.az account set -s <subscription-id>
Generera din Microsoft Entra ID-åtkomsttoken genom att köra kommandot az account get-access-token. Använd alternativet
--resource
för att ange det unika resurs-ID:t för Azure Databricks-tjänsten, som är2ff814a6-3304-4ab8-85cb-cd0e6f879c1d
. Du kan bara visa värdet för Microsoft Entra-ID-token i kommandots utdata med hjälp--query
av alternativen och-o
.--output
az account get-access-token \ --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d \ --query "accessToken" \ -o tsv
Kommentar
MSAL-baserade Azure CLI använder Microsoft Authentication Library (MSAL) som underliggande autentiseringsbibliotek. Om du inte kan använda åtkomsttoken för Microsoft Entra-ID som Azure CLI genererar kan du som ett alternativ prova att använda MSAL direkt för att hämta en Åtkomsttoken för Microsoft Entra-ID för en användare. Se Hämta Microsoft Entra ID-tokens för användare via MSAL.