Partager via


Connect-AzureAD

Se connecte à un compte authentifié pour utiliser les demandes d’applet de commande Active Directory.

Syntaxe

Connect-AzureAD
       [-AzureEnvironmentName <EnvironmentName>]
       [-TenantId <String>]
       [-Credential <PSCredential>]
       [-AccountId <String>]
       [-LogLevel <LogLevel>]
       [-LogFilePath <String>]
       [-InformationAction <ActionPreference>]
       [-InformationVariable <String>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureAD
       [-AzureEnvironmentName <EnvironmentName>]
       -TenantId <String>
       -CertificateThumbprint <String>
       -ApplicationId <String>
       [-LogLevel <LogLevel>]
       [-LogFilePath <String>]
       [-InformationAction <ActionPreference>]
       [-InformationVariable <String>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Connect-AzureAD
       [-AzureEnvironmentName <EnvironmentName>]
       [-TenantId <String>]
       -AadAccessToken <String>
       [-MsAccessToken <String>]
       -AccountId <String>
       [-LogLevel <LogLevel>]
       [-LogFilePath <String>]
       [-InformationAction <ActionPreference>]
       [-InformationVariable <String>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

L’applet de commande Connect-AzureAD connecte un compte authentifié à utiliser pour les demandes d’applet de commande Azure Active Directory.

Vous pouvez utiliser ce compte authentifié uniquement avec des applets de commande Azure Active Directory.

Exemples

Exemple 1 : Connecter une session PowerShell à un locataire

PS C:\> Connect-AzureAD -Confirm

Cette commande connecte la session PowerShell actuelle à un locataire Azure Active Directory. La commande vous invite à entrer un nom d’utilisateur et un mot de passe pour le locataire auquel vous souhaitez vous connecter. Le paramètre Confirm vous invite à confirmer.

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.

Exemple 2 : Connecter une session à l’aide d’une variable

PS C:\> $Credential = Get-Credential
PS C:\> Connect-AzureAD -Credential $Credential

La première commande obtient les informations d’identification de l’utilisateur, puis les stocke dans la variable $Credential.

La deuxième commande connecte la session PowerShell actuelle à l’aide des informations d’identification dans $Credential.

Ce compte s’authentifie auprès d’Azure Active Directory à l’aide des informations d’identification d’organisation. Vous ne pouvez pas utiliser l’authentification multifacteur ou les informations d’identification de compte Microsoft pour exécuter des applets de commande Azure Active Directory avec ce compte.

Exemple 3 : Connecter une session en tant que principal de service

# Login to Azure AD PowerShell With Admin Account
Connect-AzureAD 

# Create the self signed cert
$currentDate = Get-Date
$endDate = $currentDate.AddYears(1)
$notAfter = $endDate.AddYears(1)
$pwd = "<password>"
$thumb = (New-SelfSignedCertificate -CertStoreLocation cert:\localmachine\my -DnsName com.foo.bar -KeyExportPolicy Exportable -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -NotAfter $notAfter).Thumbprint
$pwd = ConvertTo-SecureString -String $pwd -Force -AsPlainText
Export-PfxCertificate -cert "cert:\localmachine\my\$thumb" -FilePath c:\temp\examplecert.pfx -Password $pwd

# Load the certificate
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate("C:\temp\examplecert.pfx", $pwd)
$keyValue = [System.Convert]::ToBase64String($cert.GetRawCertData())


# Create the Azure Active Directory Application
$application = New-AzureADApplication -DisplayName "test123" -IdentifierUris "https://test123"
New-AzureADApplicationKeyCredential -ObjectId $application.ObjectId -CustomKeyIdentifier "Test123" -StartDate $currentDate -EndDate $endDate -Type AsymmetricX509Cert -Usage Verify -Value $keyValue

# Create the Service Principal and connect it to the Application
$sp=New-AzureADServicePrincipal -AppId $application.AppId

# Give the Service Principal Reader access to the current tenant (Get-AzureADDirectoryRole)
Add-AzureADDirectoryRoleMember -ObjectId 5997d714-c3b5-4d5b-9973-ec2f38fd49d5 -RefObjectId $sp.ObjectId

# Get Tenant Detail
$tenant=Get-AzureADTenantDetail
# Now you can login to Azure PowerShell with your Service Principal and Certificate
Connect-AzureAD -TenantId $tenant.ObjectId -ApplicationId  $sp.AppId -CertificateThumbprint $thumb

Cette commande authentifie l’utilisateur auprès d’Azure Active Directory en tant que principal de service.

Paramètres

-AadAccessToken

Spécifie un jeton d’accès Azure Active Directory Graph.

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

Spécifie l’ID d’un compte. Vous devez spécifier l’UPN de l’utilisateur lors de l’authentification avec un jeton d’accès utilisateur.

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

Spécifie l’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

-AzureEnvironmentName

Spécifie le nom de l’environnement Azure. Les valeurs valides pour ce paramètre sont :

  • AzureCloud
  • AzureChinaCloud
  • AzureUSGovernment
  • AzureGermanyCloud

La valeur par défaut est AzureCloud.

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

-CertificateThumbprint

Spécifie l’empreinte du certificat d’un certificat X.509 de clé publique numérique d’un compte d’utilisateur autorisé à effectuer cette action.

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 l’applet de commande.

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

-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 pour les informations d’identification de l’ID de l’organisation.

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

-InformationAction

Spécifie la façon dont cette applet de commande répond à un événement d’informations. Les valeurs valides pour ce paramètre sont :

  • Continuer
  • Ignorer
  • Inquire
  • SilentlyContinue
  • Arrêter
  • Interrompre
Type:ActionPreference
Alias:infa
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-InformationVariable

Spécifie une variable dans laquelle stocker un message d’événement d’informations.

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

-LogFilePath

Chemin d’accès dans lequel le fichier journal de cette session PowerShell est écrit. Fournissez une valeur ici si vous devez vous écarter de l’emplacement du fichier journal PowerShell par défaut.

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

-LogLevel

Spécifie le niveau de journal. Les valeurs accdeptables pour ce paramètre sont les suivantes :

  • Informations
  • Error
  • Avertissement
  • None

La valeur par défaut est Info.

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

-MsAccessToken

Spécifie un 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

-TenantId

Spécifie l’ID d’un locataire.

Si vous ne spécifiez pas ce paramètre, le compte est authentifié auprès du locataire de base.

Vous devez spécifier le paramètre TenantId pour vous authentifier en tant que principal de service ou lors de l’utilisation d’un compte Microsoft.

Type:String
Alias:Domain, TenantDomain
Position:Named
Valeur par défaut:None
Obligatoire:True
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