Compartir a través de


Iniciar sesión de forma interactiva con la CLI de Azure

Los inicios de sesión interactivos en Azure ofrecen una experiencia de usuario más intuitiva y flexible. El inicio de sesión interactivo con la CLI de Azure permite a los usuarios autenticarse directamente en Azure a través del comando az login , lo que resulta útil para tareas de administración ad hoc y para entornos que requieren inicio de sesión manual, como aquellos clientes 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.

Requisitos previos

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 problem, please 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. Esto le permite presionar Entrar para seleccionar la suscripción predeterminada.

Los comandos se ejecutan en la suscripción seleccionada de forma predeterminada. Todavía puede usar 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 offde configuración core.login_experience_v2 en .

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 ahora el método de autenticación predeterminado en Windows. WAM es un componente 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 que 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 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

El valor predeterminado de la CLI de Azure es un método de autenticación basado en explorador cuando se cumple una de las siguientes opciones:

  • El sistema operativo (SO) es Mac o Linux 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.

Siga estos pasos para iniciar sesión con un explorador:

  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, inicie el flujo de código del dispositivo y le indica que abra una página del explorador 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, es posible que tenga que forzar el flujo de código de 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. Use solo este método de autenticación para aprender comandos de la CLI de Azure. Las aplicaciones de nivel de producción deben usar una entidad de servicio o una identidad administrada.

Este enfoque no es compatible con cuentas de Microsoft o cuentas que tienen habilitada la autenticación en dos fases. Recibirá un mensaje se necesita autenticación interactiva .

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

Importante

Si desea evitar que se muestre la contraseña en la consola y está usando az login de forma interactiva, utilice el comando read -s en bash.

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

En PowerShell, use el cmdlet Get-Credential.

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

Inicio de sesión con un inquilino diferente

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

En seleccionar 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 core.login_experience_v2 propiedad offde configuración en .

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

Logout

Para quitar el acceso a 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 . Tendrá que volver a iniciar sesión para ver una lista actualizada.

az account clear

az login

Borrar la memoria caché de suscripciones no es técnicamente el mismo proceso que el desconectarse de Azure. Sin embargo, al borrar la memoria 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 la expires_on propiedad junto con la expiresOn propiedad 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 expiresOn propiedad no expresa "plegado" cuando finaliza 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 el "plegado", consulte PEP 495 – Desambiguación de hora local.
  • Se recomienda que las aplicaciones de bajada usen la expires_on propiedad , ya que usa el código de hora universal (UTC).

Ejemplo:

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

Solución de problemas

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

Avanzado. Agregue localhost en "Eliminar directiva de seguridad del dominio" y seleccione Eliminar.

Consulte también