Compartir a través de


Connect-AzAccount

Conéctese a Azure con una cuenta autenticada para su uso con cmdlets de los módulos de Az PowerShell.

Importante

A partir de principios de 2025, los inicios de sesión de Azure PowerShell mediante identidades de usuario de Id. de Microsoft Entra para la autenticación requieren autenticación multifactor (MFA). Para más información, consulte Planning for mandatory multi-factor authentication for Azure (Planeación de la autenticación multifactor obligatoria para Azure y otros portales de administración).

Sintaxis

Connect-AzAccount
       [-Environment <String>]
       [-Tenant <String>]
       [-AccountId <String>]
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-UseDeviceAuthentication]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -Credential <PSCredential>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -Credential <PSCredential>
       [-Tenant <String>]
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -CertificateThumbprint <String>
       -ApplicationId <String>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-SendCertificateChain]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -ApplicationId <String>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       -FederatedToken <String>
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       -ApplicationId <String>
       [-ServicePrincipal]
       -Tenant <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-SendCertificateChain]
       -CertificatePath <String>
       [-CertificatePassword <SecureString>]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       [-Tenant <String>]
       -AccessToken <String>
       [-GraphAccessToken <String>]
       [-MicrosoftGraphAccessToken <String>]
       [-KeyVaultAccessToken <String>]
       -AccountId <String>
       [-Subscription <String>]
       [-ContextName <String>]
       [-SkipValidation]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzAccount
       [-Environment <String>]
       [-Tenant <String>]
       [-AccountId <String>]
       [-Identity]
       [-Subscription <String>]
       [-AuthScope <String>]
       [-ContextName <String>]
       [-SkipContextPopulation]
       [-MaxContextPopulation <Int32>]
       [-Force]
       [-Scope <ContextModificationScope>]
       [-DefaultProfile <IAzureContextContainer>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

El cmdlet Connect-AzAccount se conecta a Azure con una cuenta autenticada para su uso con cmdlets de los módulos de Az PowerShell. Puede usar esta cuenta autenticada solo con solicitudes de Azure Resource Manager. Para agregar una cuenta autenticada para su uso con Service Management, use el cmdlet Add-AzureAccount del módulo de Azure PowerShell. Si no se encuentra ningún contexto para el usuario actual, la lista de contextos del usuario se rellena con un contexto para cada una de sus primeras 25 suscripciones. La lista de contextos creados para el usuario se puede encontrar ejecutando Get-AzContext -ListAvailable. Para omitir este rellenado de contexto, especifique el parámetro de modificador SkipContextPopulation SkipContextPopulation. Después de ejecutar este cmdlet, puede desconectar de una cuenta de Azure mediante Disconnect-AzAccount.

Ejemplos

Ejemplo 1: Conexión a una cuenta de Azure

En este ejemplo se conecta a una cuenta de Azure. Debe proporcionar una cuenta microsoft o credenciales de identificador de organización. Si la autenticación multifactor está habilitada para las credenciales, debe iniciar sesión con la opción interactiva o usar la autenticación de entidad de servicio.

Connect-AzAccount

Please select the account you want to login with.

Retrieving subscriptions for the selection...
[Tenant and subscription selection]

No      Subscription name                       Subscription ID                             Tenant domain name        
----    ------------------------------------    ----------------------------------------    --------------------------
[1]     Subscription1                           xxxx-xxxx-xxxx-xxxx                         xxxxxxxxx.xxxxxxxxxxx.com
[2]     Subscription2                           xxxx-xxxx-xxxx-xxxx                         xxxxxxxxx.xxxxxxxxxxx.com
...
[9]     Subscription9                           xxxx-xxxx-xxxx-xxxx                         xxxxxxxxx.xxxxxxxxxxx.com

Select a tenant and subscription: 1 <requires user's input here>

Subscription name                       Tenant domain name
------------------------------------    --------------------------
Subscription1                           xxxxxxxxx.xxxxxxxxxxx.com

[Announcements]
Share your feedback regarding your experience with `Connect-AzAccount` at: https://aka.ms/azloginfeedback

If you encounter any problem, please open an issue at: https://aka.ms/azpsissue

SubscriptionName     Tenant
-----------------    ------
Subscription1        xxxxxxxxx.xxxxxxxxxxx.com

Ejemplo 2: Conexión a Azure mediante credenciales de identificador de organización

Este escenario solo funciona cuando el usuario no tiene activada la autenticación multifactor. El primer comando solicita las credenciales de usuario y los almacena en la variable $Credential. El segundo comando se conecta a una cuenta de Azure mediante las credenciales almacenadas en $Credential. Esta cuenta se autentica con Azure mediante credenciales de identificador de organización.

$Credential = Get-Credential
Connect-AzAccount -Credential $Credential

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
azureuser@contoso.com  Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Ejemplo 3: Conexión a Azure mediante una cuenta de entidad de servicio

Este comando almacena las credenciales de la entidad de servicio en la variable $Credential. A continuación, se conecta al inquilino de Azure especificado mediante las credenciales de la entidad de servicio almacenadas en la variable $Credential. El parámetro de conmutador ServicePrincipal indica que la cuenta se autentica como una entidad de servicio.

$SecurePassword = Read-Host -Prompt 'Enter a Password' -AsSecureString
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = 'zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz'
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecurePassword
Connect-AzAccount -ServicePrincipal -TenantId $TenantId -Credential $Credential

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
xxxx-xxxx-xxxx-xxxx    Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Ejemplo 4: Uso de un inicio de sesión interactivo para conectarse a un inquilino y una suscripción específicos

En este ejemplo se conecta a una cuenta de Azure con el inquilino y la suscripción especificados.

Connect-AzAccount -Tenant 'xxxx-xxxx-xxxx-xxxx' -SubscriptionId 'yyyy-yyyy-yyyy-yyyy'

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
azureuser@contoso.com  Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Ejemplo 5: Conexión mediante managed Service Identity

En este ejemplo se conecta mediante managed Service Identity (MSI) asignado por el sistema del entorno host. Por ejemplo, inicie sesión en Azure desde una máquina virtual que tenga un MSI asignado.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
MSI@50342              Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Ejemplo 6: Conexión mediante el inicio de sesión de Managed Service Identity y ClientId

En este ejemplo se conecta mediante managed Service Identity de myUserAssignedIdentity. Agrega la identidad asignada por el usuario a la máquina virtual y, a continuación, se conecta mediante clientId de la identidad asignada por el usuario. Para más información, consulte Configuración de identidades administradas para recursos de Azure en una máquina virtual de Azure.

$identity = Get-AzUserAssignedIdentity -ResourceGroupName 'myResourceGroup' -Name 'myUserAssignedIdentity'
Get-AzVM -ResourceGroupName contoso -Name testvm | Update-AzVM -IdentityType UserAssigned -IdentityId $identity.Id
Connect-AzAccount -Identity -AccountId $identity.ClientId # Run on the virtual machine

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
yyyy-yyyy-yyyy-yyyy    Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Ejemplo 7: Conexión mediante certificados

En este ejemplo se conecta a una cuenta de Azure mediante la autenticación de entidad de servicio basada en certificados. La entidad de servicio usada para la autenticación debe crearse con el certificado especificado. Para más información sobre cómo crear certificados autofirmados y asignarles permisos, consulte Uso de Azure PowerShell para crear una entidad de servicio con un certificado

$Thumbprint = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = '00000000-0000-0000-0000-00000000'
Connect-AzAccount -CertificateThumbprint $Thumbprint -ApplicationId $ApplicationId -Tenant $TenantId -ServicePrincipal

Account                      SubscriptionName TenantId                        Environment
-------                      ---------------- --------                        -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxxx Subscription1    yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud

Account          : xxxxxxxx-xxxx-xxxx-xxxxxxxx
SubscriptionName : MyTestSubscription
SubscriptionId   : zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz
TenantId         : yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy
Environment      : AzureCloud

Ejemplo 8: Conexión con AuthScope

AuthScope se usa para admitir el escenario en el que los recursos del plano de datos tienen una autenticación mejorada que los recursos de ARM, por ejemplo, el almacenamiento necesita MFA, pero ARM no. Una vez especificado AuthScope, por ejemplo, Storage, Connect-AzAccount primero iniciará sesión con el ámbito de almacenamiento https://storage.azure.com/y, a continuación, requerirá de forma silenciosa el token para ARM.

Connect-AzAccount -AuthScope Storage

Account                SubscriptionName TenantId                Environment
-------                ---------------- --------                -----------
yyyy-yyyy-yyyy-yyyy    Subscription1    xxxx-xxxx-xxxx-xxxx     AzureCloud

Ejemplo 9: Conexión mediante el archivo de certificado

En este ejemplo se conecta a una cuenta de Azure mediante la autenticación de entidad de servicio basada en certificados. El archivo de certificado, especificado por CertficatePath, debe contener tanto el certificado como la clave privada como la entrada.

$SecurePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force
$TenantId = 'yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy'
$ApplicationId = 'zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzz'
Connect-AzAccount -ServicePrincipal -ApplicationId $ApplicationId -TenantId $TenantId -CertificatePath './certificatefortest.pfx' -CertificatePassword $securePassword

Account                     SubscriptionName TenantId                        Environment
-------                     ---------------- --------                        -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1    yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud

Ejemplo 10: Conexión interactiva mediante WAM

En este ejemplo se muestra cómo habilitar la configuración de WAM (Administrador de cuentas web) y usarla para conectarse a Azure.

Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount

Account                     SubscriptionName TenantId                        Environment
-------                     ---------------- --------                        -----------
xxxxxxxx-xxxx-xxxx-xxxxxxxx Subscription1    yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyy AzureCloud

Parámetros

-AccessToken

Especifica un token de acceso.

Cautela

Los tokens de acceso son un tipo de credencial. Debe tomar las precauciones de seguridad adecuadas para mantenerlos confidenciales. Los tokens de acceso también agotan el tiempo de espera y pueden impedir que las tareas de larga duración se completen.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-AccountId

Identificador de cuenta, asociado al token de acceso. En Flujos de autenticación de usuario, accountId es el nombre de usuario o el identificador de usuario; En flujo de AccessToken, es el AccountId del token de acceso; En flujo de ManagedService, es el identificador de cliente asociado de la identidad UserAssigned. Para usar la identidad SystemAssigned, deje este campo en blanco.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ApplicationId

Id. de aplicación de la entidad de servicio.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-AuthScope

Ámbito opcional de OAuth para el inicio de sesión, valores predefinidos admitidos: AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, OperationalInsights, Storage, Synapse. También admite el identificador de recurso, como https://storage.azure.com/.

Tipo:String
Alias:AuthScopeTypeName
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-CertificatePassword

Contraseña necesaria para acceder al archivo de certificado pkcs#12.

Tipo:SecureString
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-CertificatePath

Ruta de acceso del archivo certficate en formato pkcs#12.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-CertificateThumbprint

Hash de certificado o huella digital.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ContextName

Nombre del contexto de Azure predeterminado para este inicio de sesión. Para más información sobre los contextos de Azure, consulte objetos de contexto de Azure PowerShell.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Credential

Especifica un objeto de de PSCredential. Para obtener más información sobre el objeto de PSCredential, escriba Get-Help Get-Credential. El objeto PSCredential proporciona el identificador de usuario y la contraseña para las credenciales de identificador de la organización, o el identificador de aplicación y el secreto para las credenciales de la entidad de servicio.

Tipo:PSCredential
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-DefaultProfile

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure.

Tipo:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Environment

Entorno que contiene la cuenta de Azure.

Tipo:String
Alias:EnvironmentName
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-FederatedToken

Especifica un token proporcionado por otro proveedor de identidades. El emisor y el asunto de este token deben configurarse primero para que sean de confianza para applicationId.

Cautela

Los tokens federados son un tipo de credencial. Debe tomar las precauciones de seguridad adecuadas para mantenerlos confidenciales. Los tokens federados también agotan el tiempo de espera y pueden impedir que se completen las tareas de larga duración.

Tipo:String
Alias:ClientAssertion
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Force

Sobrescriba el contexto existente con el mismo nombre sin preguntar.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-GraphAccessToken

AccessToken para Graph Service.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Identity

Inicie sesión con Managed Service Identity.

Tipo:SwitchParameter
Alias:MSI, ManagedService
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-KeyVaultAccessToken

AccessToken para el servicio KeyVault.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-MaxContextPopulation

Número máximo de suscripción para rellenar contextos después del inicio de sesión. El valor predeterminado es 25. Para rellenar todas las suscripciones a contextos, establezca en -1.

Tipo:Int32
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-MicrosoftGraphAccessToken

Token de acceso a Microsoft Graph

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Scope

Determina el ámbito de los cambios de contexto, por ejemplo, si los cambios solo se aplican al proceso actual o a todas las sesiones iniciadas por este usuario.

Tipo:ContextModificationScope
Valores aceptados:Process, CurrentUser
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-SendCertificateChain

Especifica si la notificación x5c (clave pública del certificado) se debe enviar al STS para lograr una sustitución de certificados sencilla en Azure AD.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ServicePrincipal

Indica que esta cuenta se autentica proporcionando credenciales de entidad de servicio.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-SkipContextPopulation

Omite el rellenado de contexto si no se encuentra ningún contexto.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-SkipValidation

Omita la validación del token de acceso.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Subscription

Nombre o identificador de la suscripción.

Tipo:String
Alias:SubscriptionName, SubscriptionId
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Tenant

Identificador o nombre de inquilino opcional.

Nota

Debido a las limitaciones de la API actual, debe usar un identificador de inquilino en lugar de un nombre de inquilino al conectarse con una cuenta de negocio a negocio (B2B).

Tipo:String
Alias:Domain, TenantId
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-UseDeviceAuthentication

Use la autenticación de código de dispositivo en lugar de un control del explorador.

Tipo:SwitchParameter
Alias:DeviceCode, DeviceAuth, Device
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Salidas

PSAzureProfile