Dela via


Logga in på Azure interaktivt med Hjälp av Azure CLI

Interaktiva inloggningar till Azure ger en mer intuitiv och flexibel användarupplevelse. Med Azure CLI kan du autentisera till Azure direkt via kommandot az login . Det här kommandot är användbart för ad hoc-hanteringsuppgifter och för miljöer som kräver manuell inloggning, till exempel scenarier med multifaktorautentisering (MFA). Den här metoden förenklar åtkomsten för skripttestning, inlärning och direkthantering utan att behöva förkonfigurera tjänstens huvudnamn eller andra icke-interaktiva autentiseringsmetoder.

Viktigt!

Från och med september 2025 kräver Microsoft multifaktorautentisering (MFA) för Azure CLI och andra kommandoradsverktyg. Den här ändringen gäller endast användaridentiteter för Microsoft Entra-ID och påverkar inte arbetsbelastningsidentiteter som tjänstens huvudnamn eller hanterade identiteter.

Om du använder az login med ett användarnamn och lösenord för att autentisera skript eller automatiserade arbetsflöden är det dags att migrera till en arbetsbelastningsidentitet. Mer information finns i Effekten av multifaktorautentisering på Azure CLI i automatiseringsscenarier.

Förutsättningar

Interaktiv inloggning

Om du vill logga in interaktivt använder du kommandot az login . Från och med Azure CLI version 2.61.0 använder Azure CLI Web Account Manager (WAM) i Windows och en webbläsarbaserad inloggning på Linux och macOS som standard.

az login

Prenumerationsväljare

Från och med Azure CLI version 2.61.0 uppmanas du att välja en Azure-prenumeration vid tidpunkten för inloggningen om du har åtkomst till flera prenumerationer, enligt följande exempel.

Retrieving subscriptions for the selection...

[Tenant and subscription selection]

No    Subscription name                     Subscription ID                           Tenant name
----  ------------------------------------  ----------------------------------------  --------------
[1]   Facility Services Subscription        00000000-0000-0000-0000-000000000000      Contoso
[2]   Finance Department Subscription       00000000-0000-0000-0000-000000000000      Contoso
[3]   Human Resources Subscription          00000000-0000-0000-0000-000000000000      Contoso
[4] * Information Technology Subscription   00000000-0000-0000-0000-000000000000      Contoso

The default is marked with an *; the default tenant is 'Contoso' and subscription is
'Information Technology Subscription' (00000000-0000-0000-0000-000000000000).

Select a subscription and tenant (Type a number or Enter for no changes): 2

Tenant: Contoso
Subscription: Finance Department Subscription (00000000-0000-0000-0000-000000000000)

[Announcements] With the new Azure CLI login experience, you can select the subscription you want to
use more easily. Learn more about it and its configuration at
https://go.microsoft.com/fwlink/?linkid=2271236

If you encounter any problems, open an issue at https://aka.ms/azclibug

Nästa gång du loggar in markeras den tidigare valda klientorganisationen och prenumerationen som standard med en asterisk (*) bredvid dess nummer. Med den här markeringen kan du trycka på Enter för att välja standardprenumerationen.

Som standard körs kommandon mot den valda prenumerationen. Använd az account set för att ändra din prenumeration från en kommandorad när som helst. Mer information finns i Hantera Azure-prenumerationer med Azure CLI.

Här följer några riktlinjer om prenumerationsväljaren att tänka på:

  • Prenumerationsväljaren är endast tillgänglig i 64-bitars Windows, Linux eller macOS.
  • Prenumerationsväljaren är endast tillgänglig när du använder az login kommandot .
  • Du uppmanas inte att välja en prenumeration när du loggar in med tjänstens huvudnamn eller hanterade identitet.

Om du vill inaktivera funktionen för prenumerationsväljaren anger du konfigurationsegenskapen core.login_experience_v2 till off.

az config set core.login_experience_v2=off
az login

Logga in med Web Account Manager (WAM) i Windows

Från och med Azure CLI-version 2.61.0är Web Account Manager (WAM) standardautentiseringsmetoden i Windows. WAM är en Windows 10+-komponent som fungerar som autentiseringskoordinator. En autentiseringskoordinator är ett program som körs på en användares dator. Den hanterar handskakningar för autentisering och tokenunderhåll för anslutna konton.

Att använda WAM har flera fördelar:

Om du stöter på ett problem och vill återgå till den tidigare webbläsarbaserade autentiseringsmetoden anger du konfigurationsegenskapen core.enable_broker_on_windows till false.

az account clear
az config set core.enable_broker_on_windows=false
az login

WAM är tillgängligt på Windows 10 och senare, och på Windows Server 2019 och senare.

Logga in med en webbläsare

Azure CLI är som standard en webbläsarbaserad autentiseringsmetod när något av följande villkor är sant:

  • Operativsystemet (OS) är Linux, macOS eller Windows-operativsystemet är tidigare än Windows 10 eller Windows Server 2019.
  • Konfigurationsegenskapen core.enable_broker_on_windows är inställd på false.

Följ dessa steg för att logga in med en webbläsare:

  1. Kör az login kommandot.

    az login
    

    Om Azure CLI kan öppna standardwebbläsaren initieras auktoriseringskodflödet och standardwebbläsaren öppnas för att läsa in en Azure-inloggningssida.

    Annars initieras enhetskodflödet och du uppmanas att öppna en webbläsarsida på https://aka.ms/devicelogin. Ange sedan koden som visas i terminalen.

    Om ingen webbläsare är tillgänglig eller om webbläsaren inte kan öppnas kan du tvinga enhetskodflödet med az login --use-device-code.

  2. Logga in med dina autentiseringsuppgifter för kontot i webbläsaren.

Logga in med autentiseringsuppgifter via kommandoraden

Ange dina autentiseringsuppgifter för Azure-användare på kommandoraden. Du bör endast använda den här autentiseringsmetoden när du arbetar med Azure CLI interaktivt. För applikationer på produktionsnivå, använd en tjänstesäkerhetsprincip eller hanterad identitet.

Den här metoden fungerar inte med Microsoft-konton eller konton som har multifaktorautentisering (MFA) aktiverat. Du får ett interaktivt autentiseringsmeddelande .

az login --user <username> --password <password>

Viktigt!

Om du vill undvika att visa lösenordet i terminalen när du använder az login interaktivt använder du read -s kommandot i Bash.

read -sp "Azure password: " AZ_PASS && echo && az login -u <username> -p $AZ_PASS

Använd cmdleten i Get-Credential PowerShell.

$AzCred = Get-Credential -UserName <username>
az login -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password

Logga in med en annan klientorganisation

Du kan välja en hyresgäst för att logga in med argumentet --tenant. Värdet för det här argumentet kan antingen vara en .onmicrosoft.com domän eller Azure-objekt-ID för klientorganisationen. Både interaktiva metoder och inloggningsmetoder för kommandoraden fungerar med --tenant.

I utvalda miljöer och från och med Azure CLI version 2.61.0 måste du först inaktivera prenumerationsväljaren genom att ange konfigurationsegenskapen core.login_experience_v2 till off.

# disable the subscription selector (v. 2.61.0 and up)
az config set core.login_experience_v2=off

# login with a tenant ID
az login --tenant 00000000-0000-0000-0000-000000000000

För att återaktivera prenumerationsväljaren, kör az config set core.login_experience_v2=on. Mer information om prenumerationsväljaren finns i Interaktiv inloggning.

När du har loggat in, om du vill ändra din aktiva klientorganisation, se Så här ändrar du din aktiva klientorganisation.

Logga in med --scope

az login --scope https://management.core.windows.net//.default

Logga ut

Om du vill logga ut från Azure använder du kommandot az logout .

az logout

Rensa din prenumerationscache

Om du vill uppdatera prenumerationslistan använder du kommandot az account clear . Du måste logga in igen för att se en uppdaterad lista.

az account clear

az login

Att rensa din prenumerationscache är tekniskt sett inte samma process som att logga ut från Azure. Men när du rensar din prenumerationscache kan du inte köra Azure CLI-kommandon, inklusive az account set, förrän du loggar in igen.

Uppdatera tokenar

När du loggar in med ett användarkonto genererar och lagrar Azure CLI en autentiseringsuppdateringstoken. Eftersom åtkomsttoken endast är giltiga under en kort tidsperiod utfärdas en uppdateringstoken samtidigt som åtkomsttoken utfärdas. Klientprogrammet kan sedan byta ut den här uppdateringstoken mot en ny åtkomsttoken vid behov. Mer information om tokens livslängd och giltighetstid finns i Uppdatera token i Microsofts identitetsplattform.

Använd kommandot az account get-access-token för att hämta åtkomsttoken:

# get access token for the active subscription
az account get-access-token

# get access token for a specific subscription
az account get-access-token --subscription "<subscription ID or name>"

Här är ytterligare information om förfallodatum för åtkomsttoken:

  • Förfallodatum uppdateras i ett format som stöds av MSAL-baserade Azure CLI.
  • Från och med Azure CLI 2.54.0 returnerar az account get-access-token egenskapen för förfallotiden för token tillsammans med expires_on och expiresOn egenskaperna.
  • Egenskapen expires_on representerar en POSIX-tidsstämpel (Portable Operating System Interface) medan egenskapen expiresOn representerar en lokal datetime.
  • Egenskapen expiresOn anger inte "fold" när sommartiden upphör. Detta kan orsaka problem i länder eller regioner där sommartid används. Mer information om "fold" finns i PEP 495 – Lokal tidsambiguitet.
  • Vi rekommenderar att underordnade program använder expires_on egenskapen eftersom den använder UTC (Universal Time Code).

Exempel på utdata:

{
  "accessToken": "...",
  "expiresOn": "2023-10-31 21:59:10.000000",
  "expires_on": 1698760750,
  "subscription": "...",
  "tenant": "...",
  "tokenType": "Bearer"
}

Felsökning

Anslutningen för den här webbplatsen är inte säker

När standardwebbläsaren är Microsoft Edge kan följande fel uppstå när du försöker logga in på Azure interaktivt med az login: "Anslutningen för den här webbplatsen är inte säker." Lös problemet genom att gå till edge://net-internals/#hsts i Microsoft Edge. Lägg till localhost under "Ta bort domänsäkerhetsprincip" och välj Ta bort.

Interaktiv autentisering krävs

Du får det här meddelandet när du använder en användaridentitet för att autentisera till Azure, och multifaktorautentisering krävs. Lösningen är att använda en arbetsbelastningsidentitet som ett huvudnamn för tjänsten eller en hanterad identitet för att autentisera till Azure.

Autentiseringen misslyckades mot klientorganisationen

Det här felet uppstår när en enskild Entra-användaridentitet tillhör flera Azure-klientorganisationer. Azure CLI genomgår de hyrande enheter som du har åtkomst till och försöker autentisera. Om du vill logga in med valfri klientorganisation använder du parametern --tenant . Mer information finns i Logga in med en annan klientorganisation.

Nästa steg