Get 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 generate 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 generate automatiskt och ersätter förfallna Microsoft Entra-ID-token åt dig och utnyttjar Azure CLI-autentisering.
Du kan använda Azure CLI- för att get Åtkomsttoken för Microsoft Entra-ID för användare.
Kommentar
Du kan också definiera ett tjänsthuvudnamn i Azure Active Directory och sedan get en Microsoft Entra-ID-åtkomsttoken för tjänsthuvudnamnet i stället för en användare. Se Get Microsoft Entra ID-token för tjänstens huvudnamn.
Get 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 arbetsyta list med hjälp av 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 get klient-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
, where00000000-0000-0000-0000-000000000000
är klientorganisations-ID. Se även Get prenumerations-ID och klient-ID 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>
Generate åtkomsttoken för Microsoft Entra-ID 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 get en Microsoft Entra ID-åtkomsttoken för en användare. Se Get Microsoft Entra ID-tokens för användare genom att använda MSAL.