Compartir a través de


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.

Consulte también