MSAL-baserad Azure CLI

Från och med version 2.30.0 använder Azure CLI Microsoft Authentication Library (MSAL) som det underliggande autentiseringsbiblioteket. MSAL använder Azure Active Directory v2.0-autentiseringsflödet för att tillhandahålla fler funktioner och ökar säkerheten för tokencache.

Varning

ICKE-BAKÅTKOMPATIBLA ÄNDRINGAR introduceras i Azure CLI 2.30.0. Läs dokumentet noggrant före installationen.

accessTokens.json Avskrivningar

Tidigare versioner av Azure CLI sparade ADAL-token (Azure AD Authentication Library) och poster för tjänstens huvudnamn till ~/.azure/accessToken.json. De senaste versionerna av Azure CLI använder MSAL och genererar accessTokens.jsoninte längre . Alla befintliga arbetsflöden beroende på accessTokens.json fungerar inte längre.

Poster för MSAL-tokencache och tjänstens huvudnamn sparas som krypterade filer i Windows och oformaterade filer i Linux och macOS.

Viktigt!

När du använder Azure CLI i en pipeline som Azure DevOps kontrollerar du att alla uppgifter och faser använder versioner av Azure CLI ovan v2.30.0 för MSAL-baserade Azure CLI. Azure CLI 2.30.0 är inte bakåtkompatibel med tidigare versioner och genererar ett fel när du arbetar med versioner före 2.30.0.

Alternativ att överväga

Alternativ som du kan överväga för stabilitet:

Ringer az account get-access-token

Du kan anropa az account get-access-token den manuellt i en terminal eller använda en underprocess för att anropa den från ett annat programmeringsspråk. Som standard är den returnerade åtkomsttoken för Azure Resource Manager (ARM) och standardprenumerationen/klientorganisationen som visas i az account show.

# get the active subscription
az account show --output table

# 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>"

Mer information om åtkomsttoken finns i Logga in med Azure CLI.

Använda AzureCliCredential

AzureCliCredential är en typ av autentiseringsuppgifter i alla befintliga språk-SDK:er. Den använder underprocess för att anropa az account get-access-token för att hämta en åtkomsttoken för det aktuella inloggade kontot.

Se även