Condividi tramite


Interfaccia della riga di comando di Azure basata su MSAL

A partire dalla versione 2.30.0, l'interfaccia della riga di comando di Azure usa Microsoft Authentication Library (MSAL) come libreria di autenticazione sottostante. MSAL usa il flusso di autenticazione di Azure Active Directory v2.0 per offrire maggiore funzionalità e aumenta la sicurezza per la cache dei token.

Avvertimento

MODIFICHE IMPORTANTI sono introdotte in Azure CLI 2.30.0. Leggere attentamente il documento prima dell'installazione.

accessTokens.json disapprovazione

Le versioni precedenti dell'interfaccia della riga di comando di Azure hanno salvato i token di Azure AD Authentication Library (ADAL) e le voci dell'entità servizio in ~/.azure/accessToken.json. Le versioni più recenti di Azure CLI usano MSAL e non generano più accessTokens.json. Qualsiasi flusso di lavoro esistente che dipenda da accessTokens.json non funziona più.

Le voci della cache dei token MSAL e dell'entità servizio vengono salvate come file crittografati in Windows e file di testo non crittografato in Linux e macOS.

Importante

Quando si usa l'interfaccia della riga di comando di Azure in una pipeline come Azure DevOps, assicurarsi che tutte le attività e le fasi usino versioni dell'interfaccia della riga di comando di Azure precedenti alla versione 2.30.0 per l'interfaccia della riga di comando di Azure basata su MSAL. L'interfaccia della riga di comando di Azure 2.30.0 non è compatibile con le versioni precedenti e genera un errore durante l'uso delle versioni precedenti alla versione 2.30.0.

Alternative da considerare

Alternative che è possibile prendere in considerazione per la stabilità:

Chiamata az account get-access-token

È possibile chiamare az account get-access-token manualmente in un terminale o usare un sottoprocesso per chiamarlo da un altro linguaggio di programmazione. Per impostazione predefinita, il token di accesso restituito è per Azure Resource Manager (ARM) e la sottoscrizione/tenant predefinita visualizzata in 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>"

Per ulteriori informazioni sui token di accesso, vedere Accedi con Azure CLI.

Utilizzo di AzureCliCredential

AzureCliCredential è un tipo di credenziale in tutti gli SDK del linguaggio esistenti. Utilizza subprocesso per chiamare az account get-access-token e ottenere un token di accesso per l'account attualmente connesso.

Vedere anche