Connect-AzureAD

Stellt eine Verbindung mit einem authentifizierten Konto zur Verwendung von Active Directory-Cmdletanforderungen bereit.

Syntax

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>]

Beschreibung

Das Cmdlet Connect-AzureAD verbindet ein authentifizierte Konto, das für Azure Active Directory-Cmdletanforderungen verwendet werden soll.

Sie können dieses authentifizierte Konto nur mit Azure Active Directory-Cmdlets verwenden.

Beispiele

Beispiel 1: Verbinden einer PowerShell-Sitzung mit einem Mandanten

PS C:\> Connect-AzureAD -Confirm

Dieser Befehl verbindet die aktuelle PowerShell-Sitzung mit einem Azure Active Directory-Mandanten. Die Eingabeaufforderungen für einen Benutzernamen und ein Kennwort für den Mandanten, mit dem Sie eine Verbindung herstellen möchten. Der Parameter "Bestätigen" fordert Sie zur Bestätigung auf.

Wenn die mehrstufige Authentifizierung für Ihre Anmeldeinformationen aktiviert ist, müssen Sie sich mit der interaktiven Option anmelden oder die Dienstprinzipalauthentifizierung verwenden.

Beispiel 2: Verbinden einer Sitzung mithilfe einer Variablen

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

Der erste Befehl ruft die Benutzeranmeldeinformationen ab und speichert sie dann in der variablen $Credential.

Der zweite Befehl verbindet die aktuelle PowerShell-Sitzung mithilfe der Anmeldeinformationen in $Credential.

Dieses Konto authentifiziert sich mit Azure Active Directory mithilfe von Organisations-ID-Anmeldeinformationen. Sie können keine mehrstufige Authentifizierung oder Microsoft-Kontoanmeldeinformationen verwenden, um Azure Active Directory-Cmdlets mit diesem Konto auszuführen.

Beispiel 3: Verbinden einer Sitzung als Dienstprinzipal

# 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

Dieser Befehl authentifiziert den Benutzer bei Azure Active Directory als Dienstprinzipal.

Parameter

-AadAccessToken

Gibt ein Azure Active Directory Graph-Zugriffstoken an.

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

-AccountId

Gibt die ID eines Kontos an. Sie müssen den UPN des Benutzers angeben, wenn sie mit einem Benutzerzugriffstoken authentifiziert werden.

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

-ApplicationId

Gibt die Anwendungs-ID des Dienstprinzipals an.

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

-AzureEnvironmentName

Gibt den Namen der Azure-Umgebung an. Zulässige Werte für diesen Parameter:

  • AzureCloud
  • AzureChinaCloud
  • AzureUSGovernment
  • AzureGermanyCloud

Der Standardwert ist AzureCloud.

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

-CertificateThumbprint

Gibt den Zertifikat-Fingerabdruck eines digitalen öffentlichen Schlüssels X.509-Zertifikat eines Benutzerkontos an, das über die Berechtigung zum Ausführen dieser Aktion verfügt.

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

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

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

-Credential

Gibt ein PSCredential-Objekt an. Wenn Sie weitere Informationen zum PSCredential-Objekt erhalten möchten, geben Sie Get-Help Get-Credential ein.

Das PSCredential-Objekt stellt die Benutzer-ID und das Kennwort für Organisations-ID-Anmeldeinformationen bereit.

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

-InformationAction

Gibt an, wie dieses Cmdlet auf ein Informationsereignis reagiert. Zulässige Werte für diesen Parameter:

  • Weiter
  • Ignorieren
  • Diagnosetool
  • SilentlyContinue
  • Beenden
  • Angehalten
Type:ActionPreference
Aliases:infa
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InformationVariable

Gibt eine Variable an, in der eine Informationsereignisnachricht gespeichert werden soll.

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

-LogFilePath

Der Pfad, in den die Protokolldatei für diese PowerShell-Sitzung geschrieben wird. Geben Sie hier einen Wert an, wenn Sie vom Standardmäßigen PowerShell-Protokolldateispeicherort abweichen müssen.

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

-LogLevel

Gibt die Protokollebene an. Zulässige Werte für diesen Parameter:

  • Info
  • Fehler
  • Warnung
  • Keine

Der Standardwert ist Info.

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

-MsAccessToken

Gibt ein Microsoft Graph-Zugriffstoken an.

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

-TenantId

Gibt die ID eines Mandanten an.

Wenn Sie diesen Parameter nicht angeben, wird das Konto mit dem Heimmandanten authentifiziert.

Sie müssen den TenantId-Parameter angeben, der als Dienstprinzipal oder bei Verwendung des Microsoft-Kontos authentifiziert werden soll.

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

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

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