Compartir a través de


Inicio de sesión en Azure de forma interactiva mediante la CLI de Azure

Los inicios de sesión interactivos en Azure ofrecen una experiencia de usuario más intuitiva y flexible. Con la CLI de Azure, puede autenticarse en Azure directamente a través del comando az login . Este comando es útil para las tareas de administración ad hoc y para entornos que requieren inicio de sesión manual, como escenarios con autenticación multifactor (MFA). Este método simplifica el acceso a las pruebas de scripts, el aprendizaje y la administración sobre la marcha sin necesidad de configurar previamente las entidades de servicio u otros métodos de autenticación no interactivos.

Importante

A partir de septiembre de 2025, Microsoft requerirá autenticación multifactor (MFA) para la CLI de Azure y otras herramientas de línea de comandos. Este cambio solo se aplica a las identidades de usuario del identificador de Entra de Microsoft y no afecta a las identidades de carga de trabajo, como las entidades de servicio o las identidades administradas.

Si usa az login con un nombre de usuario y una contraseña para autenticar scripts o flujos de trabajo automatizados, ahora es el momento de migrar a una identidad de carga de trabajo. Para más información, consulte Impacto de la autenticación multifactor en la CLI de Azure en escenarios de automatización.

Prerrequisitos

Inicio de sesión interactivo

Para iniciar sesión de forma interactiva, use el comando az login . A partir de la versión 2.61.0 de la CLI de Azure, la CLI de Azure usa el Administrador de cuentas web (WAM) en Windows y un inicio de sesión basado en explorador en Linux y macOS de forma predeterminada.

az login

Selector de suscripción

A partir de la versión 2.61.0 de la CLI de Azure, si tiene acceso a varias suscripciones, se le pedirá que seleccione una suscripción de Azure en el momento del inicio de sesión, como se muestra en el ejemplo siguiente.

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

La próxima vez que inicie sesión, el inquilino y la suscripción seleccionados anteriormente se marcan como el valor predeterminado con un asterisco (*) junto a su número. Este marcado le permite presionar Entrar para seleccionar la suscripción predeterminada.

De forma predeterminada, los comandos se ejecutan en la suscripción seleccionada. Use az account set para cambiar la suscripción desde una línea de comandos en cualquier momento. Para más información, consulte Administración de suscripciones de Azure con la CLI de Azure.

Estas son algunas directrices sobre el selector de suscripciones que debe tener en cuenta:

  • El selector de suscripciones solo está disponible en Windows, Linux o macOS de 64 bits.
  • El selector de suscripción solo está disponible cuando se usa el az login comando .
  • No se le pedirá que seleccione una suscripción cuando inicie sesión con una entidad de servicio o una identidad administrada.

Si desea deshabilitar la característica del selector de suscripciones, establezca la propiedad de configuración core.login_experience_v2 en off.

az config set core.login_experience_v2=off
az login

Inicio de sesión con el Administrador de cuentas web (WAM) en Windows

A partir de la versión 2.61.0 de la CLI de Azure, el Administrador de cuentas web (WAM) es el método de autenticación predeterminado en Windows. WAM es un componente de Windows 10+ que actúa como agente de autenticación. Un agente de autenticación es una aplicación que se ejecuta en la máquina de un usuario. Administra los protocolos de enlace de autenticación y el mantenimiento de tokens para las cuentas conectadas.

El uso de WAM tiene varias ventajas:

Si se produce un problema como User cancelled the Accounts Control Operation y desea revertir al método de autenticación basado en explorador anterior, establezca la propiedad de configuración core.enable_broker_on_windows en false.

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

WAM está disponible en Windows 10 y versiones posteriores y en Windows Server 2019 y versiones posteriores.

Inicio de sesión con un explorador

La CLI de Azure tiene como valor predeterminado un método de autenticación basado en explorador cuando se cumple una de las condiciones siguientes:

  • El sistema operativo (SO) es Linux, macOS o el sistema operativo Windows es anterior a Windows 10 o Windows Server 2019.
  • La core.enable_broker_on_windows propiedad de configuración se establece en false.

Para iniciar sesión con un explorador, siga estos pasos:

  1. Ejecute el comando az login.

    az login
    

    Si la CLI de Azure puede abrir el explorador predeterminado, inicia el flujo de código de autorización y abre el explorador predeterminado para cargar una página de inicio de sesión de Azure.

    De lo contrario, se inicia el flujo de código del dispositivo y se le indica que abra una página del navegador en https://aka.ms/devicelogin. A continuación, escriba el código que se muestra en el terminal.

    Si no hay ningún explorador web disponible o no se puede abrir el explorador web, puede forzar el flujo de código del dispositivo con az login --use-device-code.

  2. Inicie sesión con las credenciales de su cuenta en el explorador.

Inicie sesión con sus credenciales en la línea de comandos.

Proporcione sus credenciales de usuario de Azure en la línea de comandos. Solo debe usar este método de autenticación al trabajar con la CLI de Azure de forma interactiva. En el caso de las aplicaciones de nivel de producción, use una entidad de servicio o una identidad administrada.

Este enfoque no funciona con cuentas o cuentas de Microsoft que tienen habilitada la autenticación multifactor (MFA). Recibirá un mensaje se necesita autenticación interactiva .

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

Importante

Para evitar mostrar la contraseña en el terminal al usar az login de forma interactiva, use el read -s comando en Bash.

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

En PowerShell, utiliza el Get-Credential cmdlet.

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

Iniciar sesión con un cliente diferente

Puede seleccionar un inquilino para iniciar sesión con el argumento --tenant. El valor de este argumento puede ser un .onmicrosoft.com dominio o el identificador de objeto de Azure para el inquilino. Tanto el método de inicio de sesión interactivo como el de línea de comandos funcionan con --tenant.

En ciertos entornos y a partir de la versión 2.61.0 de la CLI de Azure, primero debe deshabilitar el selector de suscripciones estableciendo la propiedad de configuración core.login_experience_v2 en 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

Para volver a habilitar el selector de suscripciones, ejecute az config set core.login_experience_v2=on. Para obtener más información sobre el selector de suscripciones, consulte Inicio de sesión interactivo.

Después de iniciar sesión, si desea cambiar el inquilino activo, consulte Cómo cambiar el inquilino activo.

Inicio de sesión con --scope

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

Cerrar sesión

Para cerrar la sesión de Azure, use el comando az logout .

az logout

Borrar la caché de suscripciones

Para actualizar la lista de suscripciones, use el comando az account clear . Debe iniciar sesión de nuevo para ver una lista actualizada.

az account clear

az login

Borrar la caché de suscripciones no es técnicamente el mismo proceso que el desconectarse de Azure. Sin embargo, al borrar la caché de suscripciones, no puede ejecutar comandos de la CLI de Azure, incluidos az account set, hasta que vuelva a iniciar sesión.

Tokens de actualización

Al iniciar sesión con una cuenta de usuario, la CLI de Azure genera y almacena un token de actualización de autenticación. Dado que los tokens de acceso son válidos durante un breve período de tiempo, se emite un token de actualización al mismo tiempo que se emite el token de acceso. La aplicación cliente puede intercambiar este token de actualización por un nuevo token de acceso cuando es necesario. Para obtener más información sobre la vigencia y expiración del token, consulte Actualizar tokens en la plataforma de identidad de Microsoft.

Use el comando az account get-access-token para recuperar el token de acceso:

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

A continuación se muestra información adicional sobre las fechas de expiración del token de acceso:

  • Las fechas de expiración se actualizan en un formato compatible con la CLI de Azure basada en MSAL.
  • A partir de la CLI de Azure 2.54.0, az account get-access-token devuelve tanto la propiedad expires_on como la propiedad expiresOn para la hora de expiración del token.
  • La expires_on propiedad representa una marca de tiempo de interfaz de sistema operativo portátil (POSIX) mientras que la expiresOn propiedad representa una fecha y hora local.
  • La propiedad expiresOn no expresa "desdoblar" cuando termina el horario de verano. Esto puede causar problemas en países o regiones donde se adopta el horario de verano. Para obtener más información sobre "fold", consulte PEP 495 – Desambiguación de hora local.
  • Se recomienda que las aplicaciones posteriores usen la expires_on propiedad, ya que usa el Tiempo Universal Coordinado (UTC).

Ejemplo de resultado:

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

Solución de problemas

La conexión de este sitio no es segura

Cuando el explorador predeterminado es Microsoft Edge, es posible que encuentre el siguiente error al intentar iniciar sesión en Azure de forma interactiva con az login: "La conexión de este sitio no es segura". Para resolver este problema, visite edge://net-internals/#hsts en Microsoft Edge. Agregue localhost en "Eliminar directiva de seguridad del dominio" y seleccione Eliminar.

Se necesita autenticación interactiva

Recibirá este mensaje al usar una identidad de usuario para autenticarse en Azure y se requiere la autenticación multifactor. La solución consiste en usar una identidad de carga de trabajo como una entidad de servicio o una identidad administrada para autenticarse en Azure.

Error de autenticación en el inquilino

Este error se produce cuando una única identidad de usuario entra pertenece a varios inquilinos de Azure. La CLI de Azure recorre en bucle los inquilinos a los que tiene acceso e intenta autenticarse. Para iniciar sesión con el inquilino que prefiera, use el --tenant parámetro . Para obtener más información, consulte Iniciar sesión con un cliente diferente.

Pasos siguientes

  • Tutorial: Aprende a usar la CLI de Azure
  • Encuentre ejemplos y documentos publicados de la CLI de Azure