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, vilket 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 huvudnamn för tjänsten i Azure Active Directory och sedan hämta en Microsoft Entra ID-åtkomsttoken för tjänstens huvudnamn i stället för för 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 hjälp av
--query
alternativen och-o
för--output
att begränsa resultatet. 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 klientorganisations-ID:t för en Azure Databricks-arbetsyta genom att köra kommandot
curl -v <per-workspace-URL>/aad/auth
och titta i utdata< location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000
, där00000000-0000-0000-0000-000000000000
är klientorganisations-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
-s
alternativet 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-token för användare med hjälp av MSAL.