Connect-AzAccount

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

Syntax

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 Connect-AzAccount cmdlet 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 Add-AzureAccount cmdlet 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. Para encontrar la lista de contextos creados para el usuario, ejecute Get-AzContext -ListAvailable. Para omitir este rellenado de contexto, especifique el parámetro de modificador SkipContextPopulation . Después de ejecutar este cmdlet, puede desconectar de una cuenta de Azure mediante Disconnect-AzAccount.

Ejemplos

Ejemplo 1: Conectar 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

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

Ejemplo 2: Conectar 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 las almacena en la $Credential variable . 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: Conectar a Azure mediante una cuenta de entidad de servicio

El primer comando almacena las credenciales de la entidad de servicio en la $Credential variable . El segundo comando conecta el inquilino de Azure especificado mediante las credenciales de la entidad de servicio almacenadas en la $Credential variable . El parámetro del modificador ServicePrincipal indica que la cuenta se autentica como una entidad de servicio.

$SecurePassword = ConvertTo-SecureString -String "Password123!" -AsPlainText -Force
$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: Conectar 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: Conectar 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, después, se conecta mediante el 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: Conectar 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: Conectar 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, Conectar-AzAccount iniciará sesión primero con el ámbito https://storage.azure.com/de almacenamiento 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: Conectar 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 el certificado y la clave privada como entrada.

$SecurePassword = ConvertTo-SecureString -String "Password123!" -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: Conectar de forma 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.

Precaución

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.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-AccountId

Id. de cuenta / Id. de usuario / Nombre de usuario con el que iniciar sesión en el conjunto de parámetros Default (UserWithSubscriptionId); Identificador de cuenta para el token de acceso en el conjunto de parámetros AccessToken ; Identificador de cuenta para el servicio administrado en el conjunto de parámetros ManagedService . Puede ser un identificador de recurso de servicio administrado o el identificador de cliente asociado. Para usar la identidad asignada por el sistema, deje este campo en blanco.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationId

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

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-AuthScope

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

Type:String
Aliases:AuthScopeTypeName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificatePassword

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

Type:SecureString
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CertificatePath

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

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-CertificateThumbprint

Hash de certificado o huella digital.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Especifica un objeto PSCredential . Para obtener más información sobre el objeto 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.

Type:PSCredential
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Credenciales, cuenta, inquilino y suscripción usados para la comunicación con Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Environment

Entorno que contiene la cuenta de Azure.

Type:String
Aliases:EnvironmentName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Precaución

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.

Type:String
Aliases:ClientAssertion
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Force

Sobrescriba el contexto existente con el mismo nombre sin preguntar.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-GraphAccessToken

AccessToken para Graph Service.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Identity

Inicie sesión con Managed Service Identity.

Type:SwitchParameter
Aliases:MSI, ManagedService
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-KeyVaultAccessToken

AccessToken para el servicio KeyVault.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MicrosoftGraphAccessToken

Token de acceso a Microsoft Graph

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:ContextModificationScope
Accepted values:Process, CurrentUser
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ServicePrincipal

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

Type:SwitchParameter
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-SkipContextPopulation

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipValidation

Omita la validación del token de acceso.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Subscription

Nombre o identificador de la suscripción.

Type:String
Aliases:SubscriptionName, SubscriptionId
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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).

Type:String
Aliases:Domain, TenantId
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-UseDeviceAuthentication

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

Type:SwitchParameter
Aliases:DeviceCode, DeviceAuth, Device
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

String

Salidas

PSAzureProfile