CLI de Azure basada en MSAL
A partir de la versión 2.30.0, la CLI de Azure usa la Biblioteca de autenticación de Microsoft (MSAL) como biblioteca de autenticación subyacente. MSAL usa el flujo de autenticación de Azure Active Directory v2.0 para proporcionar más funcionalidad y aumentar la seguridad de la caché de tokens.
Advertencia
En la CLI de Azure 2.30.0 se han introducido cambios importantes. Lea cuidadosamente la documentación antes de la instalación.
accessTokens.json
en desuso
Las versiones anteriores de la CLI de Azure guardaban tokens de Biblioteca de autenticación de Active Directory (ADAL) y entradas de entidad de servicio en ~/.azure/accessToken.json
. Las versiones más recientes de la CLI de Azure usan MSAL y ya no generan accessTokens.json
. Los flujos de trabajo existenten que dependan de accessTokens.json
dejarán de funcionar.
Las entradas de la caché de tokens de MSAL y la entidad de servicio se guardan como archivos cifrados en Windows, y como archivos de texto no cifrado en Linux y macOS.
Importante
Si usa la CLI de Azure en una canalización, como Azure DevOps, asegúrese de que todas las tareas y fases utilizan versiones de la CLI de Azure posteriores a la 2.30.0 para la CLI de Azure basada en MSAL. La versión 2.30.0 de la CLI de Azure no es compatible con las versiones anteriores y genera un error cuando se usan versiones anteriores a la 2.30.0.
Alternativas a tener en cuenta
Alternativas que puede considerar para la estabilidad:
Llamadas a az account get-access-token
Puede llamar az account get-access-token
manualmente en un terminal o usar un subproceso para llamarlo desde otro lenguaje de programación. De forma predeterminada, el token de acceso devuelto es para Azure Resource Manager (ARM) y la suscripción o inquilino predeterminado que se muestra en 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>"
Para más información sobre los tokens de acceso, consulte Inicio de sesión con la CLI de Azure.
Usar AzureCliCredential
AzureCliCredential
es un tipo de credencial que aparece en todos los SDK de lenguaje existentes. Usa el subproceso para llamar a az account get-access-token
para obtener un token de acceso para la cuenta actual que ha iniciado sesión.