Partager via


Connect-AzAccount

Connectez-vous à Azure avec un compte authentifié à utiliser avec des applets de commande à partir des modules Az PowerShell.

Syntaxe

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 : Se 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

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

Exemple 2 : Se 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 : Se connecter à Azure à l’aide d’un compte de principal de service

Cette commande stocke les informations d’identification du principal de service dans la $Credential variable. Ensuite, il se connecte au 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 = 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

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 : Se 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 : Se 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 : Se 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 : Se connecter à 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, Connect-AzAccount se connecte d’abord avec l’étendue https://storage.azure.com/de stockage, puis nécessite silencieusement un jeton pour ARM.

Connect-AzAccount -AuthScope Storage

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

Exemple 9 : Se connecter à l’aide d’un 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 "****" -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 : Se 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
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ApplicationId

ID d’application du principal de service.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AuthScope

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

Type:String
Alias:AuthScopeTypeName
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-CertificatePassword

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

Type:SecureString
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-CertificatePath

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

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-CertificateThumbprint

Hachage de certificat ou empreinte numérique.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter la commande cmdlet.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

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

Type:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Environment

Environnement contenant le compte Azure.

Type:String
Alias:EnvironmentName
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Alias:ClientAssertion
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Force

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

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-GraphAccessToken

AccessToken pour le service Graph.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Identity

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

Type:SwitchParameter
Alias:MSI, ManagedService
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyVaultAccessToken

AccessToken pour le service KeyVault.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MicrosoftGraphAccessToken

Jeton d’accès à Microsoft Graph

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeurs acceptées:Process, CurrentUser
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ServicePrincipal

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

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SkipContextPopulation

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

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SkipValidation

Ignorez la validation du jeton d’accès.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Subscription

Nom ou ID de l’abonnement.

Type:String
Alias:SubscriptionName, SubscriptionId
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Alias:Domain, TenantId
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UseDeviceAuthentication

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

Type:SwitchParameter
Alias:DeviceCode, DeviceAuth, Device
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

Sorties

PSAzureProfile