Connect-AzAccount

Connecter à Azure avec un compte authentifié à utiliser avec des applets de commande à partir des modules 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

L’applet Connect-AzAccount de commande se connecte à Azure avec un compte authentifié à utiliser avec des applets de commande à partir des modules Az PowerShell. Vous pouvez utiliser ce compte authentifié uniquement avec les requêtes Azure Resource Manager. Pour ajouter un compte authentifié à utiliser avec Service Management, utilisez l’applet Add-AzureAccount de commande à partir du module Azure PowerShell. Si aucun contexte n’est trouvé pour l’utilisateur actuel, la liste de contextes de l’utilisateur est remplie avec un contexte pour chacun de ses 25 premiers abonnements. La liste des contextes créés pour l’utilisateur est disponible en exécutant Get-AzContext -ListAvailable. Pour ignorer cette population de contexte, spécifiez le paramètre de commutateur SkipContextPopulation . Après avoir exécuté cette applet de commande, vous pouvez vous déconnecter d’un compte Azure à l’aide Disconnect-AzAccountde .

Exemples

Exemple 1 : Connecter à un compte Azure

Cet exemple se connecte à un compte Azure. Vous devez fournir un compte Microsoft ou des informations d’identification d’ID d’organisation. Si l’authentification multifacteur est activée pour vos informations d’identification, vous devez vous connecter à l’aide de l’option interactive ou utiliser l’authentification du principal de service.

Connect-AzAccount

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

Exemple 2 : Connecter à Azure à l’aide d’informations d’identification d’ID d’organisation

Ce scénario fonctionne uniquement lorsque l’utilisateur n’a pas activé l’authentification multifacteur. La première commande invite les informations d’identification de l’utilisateur et les stocke dans la $Credential variable. La deuxième commande se connecte à un compte Azure à l’aide des informations d’identification stockées dans $Credential. Ce compte s’authentifie auprès d’Azure à l’aide des informations d’identification de l’ID d’organisation.

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

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

Exemple 3 : Connecter à Azure à l’aide d’un compte de principal de service

La première commande stocke les informations d’identification du principal de service dans la $Credential variable. La deuxième commande connecte le locataire Azure spécifié à l’aide des informations d’identification du principal de service stockées dans la $Credential variable. Le paramètre de commutateur ServicePrincipal indique que le compte s’authentifie en tant que principal de service.

$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

Exemple 4 : Utiliser une connexion interactive pour se connecter à un locataire et un abonnement spécifiques

Cet exemple se connecte à un compte Azure avec le locataire et l’abonnement spécifiés.

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

Exemple 5 : Connecter à l’aide d’une identité de service managé

Cet exemple se connecte à l’aide d’une identité msi (Managed Service Identity) affectée par le système de l’environnement hôte. Par exemple, vous vous connectez à Azure à partir d’une machine virtuelle disposant d’une msi affectée.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

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

Exemple 6 : Connecter à l’aide de la connexion Managed Service Identity et du ClientId

Cet exemple se connecte à l’aide de l’identité de service managé de myUserAssignedIdentity. Il ajoute l’identité affectée par l’utilisateur à la machine virtuelle, puis se connecte à l’aide du ClientId de l’identité affectée par l’utilisateur. Pour plus d’informations, consultez Configurer des identités managées pour les ressources Azure sur une machine virtuelle 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

Exemple 7 : Connecter à l’aide de certificats

Cet exemple se connecte à un compte Azure à l’aide de l’authentification du principal de service basé sur des certificats. Le principal de service utilisé pour l’authentification doit être créé avec le certificat spécifié. Pour plus d’informations sur la création de certificats auto-signés et leur attribution d’autorisations, consultez Utiliser Azure PowerShell pour créer un principal de service avec un certificat

$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

Exemple 8 : Connecter avec AuthScope

AuthScope est utilisé pour prendre en charge le scénario selon lequel les ressources de plan de données ont amélioré l’authentification que les ressources ARM, par exemple, le stockage a besoin d’une authentification multifacteur, mais pas d’ARM. Une fois AuthScope spécifié, par exemple, Stockage, Connecter-AzAccount se connectera d’abord avec l’étendue https://storage.azure.com/de stockage, puis exigera silencieusement le jeton pour ARM.

Connect-AzAccount -AuthScope Storage

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

Exemple 9 : Connecter à l’aide du fichier de certificat

Cet exemple se connecte à un compte Azure à l’aide de l’authentification du principal de service basé sur des certificats. Le fichier de certificat, spécifié par CertficatePath, doit contenir à la fois le certificat et la clé privée comme entrée.

$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

Exemple 10 : Connecter de manière interactive à l’aide de WAM

Cet exemple montre comment activer la configuration pour WAM (Gestionnaire de comptes web) et l’utiliser pour se connecter à Azure.

Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount

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

Paramètres

-AccessToken

Spécifie un jeton d’accès.

Attention

Les jetons d’accès sont un type d’informations d’identification. Vous devez prendre les précautions de sécurité appropriées pour les garder confidentielles. Les jetons d’accès expirent également et peuvent empêcher la fin des tâches longues.

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

-AccountId

ID de compte / ID d’utilisateur / Nom d’utilisateur pour vous connecter avec le jeu de paramètres Par défaut (UserWithSubscriptionId) ; ID de compte pour le jeton d’accès dans le jeu de paramètres AccessToken ; ID de compte pour le service managé dans le jeu de paramètres ManagedService . Il peut s’agir d’un ID de ressource de service managé ou de l’ID client associé. Pour utiliser l’identité affectée par le système, laissez ce champ vide.

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

-ApplicationId

ID d’application du principal de service.

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

-AuthScope

Étendue OAuth facultative pour la connexion, valeurs prédéfinies prises en charge : AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, Operational Recommandations, Stockage, Synapse. Il prend également en charge l’ID de ressource comme https://storage.azure.com/.

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

-CertificatePassword

Mot de passe requis pour accéder au fichier de certificat pkcs#12.

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

-CertificatePath

Chemin d’accès du fichier certficate au format pkcs#12.

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

-CertificateThumbprint

Hachage de certificat ou empreinte numérique.

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

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

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

-ContextName

Nom du contexte Azure par défaut pour cette connexion. Pour plus d’informations sur les contextes Azure, consultez les objets de contexte Azure PowerShell.

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

-Credential

Spécifie un objet PSCredential . Pour plus d’informations sur l’objet PSCredential , tapez Get-Help Get-Credential. L’objet PSCredential fournit l’ID utilisateur et le mot de passe des informations d’identification d’ID d’organisation, ou l’ID d’application et le secret pour les informations d’identification du principal de service.

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

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

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

-Environment

Environnement contenant le compte Azure.

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

-FederatedToken

Spécifie un jeton fourni par un autre fournisseur d’identité. L’émetteur et l’objet de ce jeton doivent d’abord être configurés pour être approuvés par l’Id d’application.

Attention

Les jetons fédérés sont un type d’informations d’identification. Vous devez prendre les précautions de sécurité appropriées pour les garder confidentielles. Les jetons fédérés expirent également et peuvent empêcher la fin des tâches longues.

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

-Force

Remplacez le contexte existant avec le même nom sans demander d’invite.

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

-GraphAccessToken

AccessToken pour le service Graph.

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

-Identity

Connectez-vous à l’aide d’une identité de service managé.

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

-KeyVaultAccessToken

AccessToken pour le service KeyVault.

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

-MaxContextPopulation

Nombre maximal d’abonnements pour remplir les contextes après la connexion. Valeur par défaut : 25. Pour remplir tous les abonnements dans des contextes, affectez la valeur -1.

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

-MicrosoftGraphAccessToken

Jeton d’accès à Microsoft Graph

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

-Scope

Détermine l’étendue des modifications de contexte, par exemple, si les modifications s’appliquent uniquement au processus actuel ou à toutes les sessions démarrées par cet utilisateur.

Type:ContextModificationScope
Accepted values:Process, CurrentUser
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SendCertificateChain

Spécifie si la revendication x5c (clé publique du certificat) doit être envoyée au STS pour obtenir une substitution de certificat simple dans Azure AD.

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

-ServicePrincipal

Indique que ce compte s’authentifie en fournissant les informations d’identification du principal de service.

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

-SkipContextPopulation

Ignore la population du contexte si aucun contexte n’est trouvé.

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

-SkipValidation

Ignorez la validation du jeton d’accès.

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

-Subscription

Nom ou ID de l’abonnement.

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

-Tenant

Nom ou ID de locataire facultatif.

Remarque

En raison des limitations de l’API actuelle, vous devez utiliser un ID de locataire au lieu d’un nom de locataire lors de la connexion à un compte professionnel (B2B).

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

-UseDeviceAuthentication

Utilisez l’authentification par code d’appareil au lieu d’un contrôle de navigateur.

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

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

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

Entrées

String

Sorties

PSAzureProfile