Connect-AzAccount

Verbinden mit einem authentifizierten Konto für die Verwendung mit Cmdlets aus den Az PowerShell-Modulen zu Azure.

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

Beschreibung

Das Connect-AzAccount Cmdlet stellt eine Verbindung mit Azure mit einem authentifizierten Konto für die Verwendung mit Cmdlets aus den Az PowerShell-Modulen her. Sie können dieses authentifizierte Konto nur mit Azure Resource Manager-Anforderungen verwenden. Verwenden Sie das Cmdlet aus dem Azure PowerShell-Modul, um ein authentifiziertes Konto für die Add-AzureAccount Verwendung mit Dienstverwaltung hinzuzufügen. Wenn kein Kontext für den aktuellen Benutzer gefunden wird, wird die Kontextliste des Benutzers mit einem Kontext für jedes seiner ersten 25 Abonnements aufgefüllt. Die Liste der für den Benutzer erstellten Kontexte finden Sie unter Ausführung Get-AzContext -ListAvailable. Um diese Kontextgesamtheit zu überspringen, geben Sie den Parameter "SkipContextPopulation switch" an. Nach dem Ausführen dieses Cmdlets können Sie die Verbindung mit einem Azure-Konto trennen.Disconnect-AzAccount

Beispiele

Beispiel 1: Verbinden zu einem Azure-Konto

In diesem Beispiel wird eine Verbindung mit einem Azure-Konto hergestellt. Sie müssen ein Microsoft-Konto oder eine Organisations-ID angeben. Wenn die mehrstufige Authentifizierung für Ihre Anmeldeinformationen aktiviert ist, müssen Sie sich mit der interaktiven Option anmelden oder die Dienstprinzipalauthentifizierung verwenden.

Connect-AzAccount

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

Beispiel 2: Verbinden zu Azure mithilfe von Organisations-ID-Anmeldeinformationen

Dieses Szenario funktioniert nur, wenn der Benutzer keine mehrstufige Authentifizierung aktiviert hat. Die ersten Eingabeaufforderungen für Benutzeranmeldeinformationen und speichert sie in der $Credential Variablen. Der zweite Befehl stellt eine Verbindung mit einem Azure-Konto mithilfe der in $Credential. Dieses Konto authentifiziert sich mit Azure mithilfe von Organisations-ID-Anmeldeinformationen.

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

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

Beispiel 3: Verbinden mit einem Dienstprinzipalkonto zu Azure

Der erste Befehl speichert die Dienstprinzipalanmeldeinformationen in der $Credential Variablen. Der zweite Befehl verbindet den angegebenen Azure-Mandanten mithilfe der in der $Credential Variablen gespeicherten Dienstprinzipalanmeldeinformationen. Der Parameter "ServicePrincipal switch" gibt an, dass sich das Konto als Dienstprinzipal authentifiziert.

$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

Beispiel 4: Verwenden einer interaktiven Anmeldung zum Herstellen einer Verbindung mit einem bestimmten Mandanten und Abonnement

In diesem Beispiel wird eine Verbindung mit einem Azure-Konto mit dem angegebenen Mandanten und Abonnement hergestellt.

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

Beispiel 5: Verbinden mithilfe einer verwalteten Dienstidentität

In diesem Beispiel wird eine Verbindung mit einer vom System zugewiesenen managed Service Identity (MSI) der Hostumgebung hergestellt. Sie melden sich beispielsweise von einem virtuellen Computer mit einer zugewiesenen MSI-Datei bei Azure an.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

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

Beispiel 6: Verbinden mithilfe der Verwalteten Dienstidentitätsanmeldung und ClientId

In diesem Beispiel wird eine Verbindung mit der verwalteten Dienstidentität von myUserAssignedIdentity hergestellt. Sie fügt dem virtuellen Computer die benutzerseitig zugewiesene Identität hinzu und stellt dann mithilfe der Client-ID (ClientId) der benutzerseitig zugewiesenen Identität eine Verbindung her. Weitere Informationen finden Sie unter Konfigurieren von verwalteten Identitäten für Azure-Ressourcen auf einem virtuellen Azure-Computer mithilfe von PowerShell.

$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

Beispiel 7: Verbinden verwenden von Zertifikaten

In diesem Beispiel wird eine Verbindung mit einem Azure-Konto mithilfe der zertifikatbasierten Dienstprinzipalauthentifizierung hergestellt. Der für die Authentifizierung verwendete Dienstprinzipal muss mit dem angegebenen Zertifikat erstellt werden. Weitere Informationen zum Erstellen von selbstsignierten Zertifikaten und zum Zuweisen von Berechtigungen finden Sie unter Verwenden von Azure PowerShell zum Erstellen eines Dienstprinzipals mit einem Zertifikat

$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

Beispiel 8: Verbinden mit AuthScope

AuthScope wird verwendet, um Szenario zu unterstützen, dass Datenebenenressourcen eine erweiterte Authentifizierung haben als ARM-Ressourcen, z. B. Speicherbedarf MFA, aber ARM nicht. Nachdem AuthScope angegeben wurde, z. B. Speicher, Verbinden-AzAccount anmeldet sich zuerst mit Speicherbereich https://storage.azure.com/und erfordert dann automatisch Token für ARM.

Connect-AzAccount -AuthScope Storage

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

Beispiel 9: Verbinden mithilfe der Zertifikatdatei

In diesem Beispiel wird eine Verbindung mit einem Azure-Konto mithilfe der zertifikatbasierten Dienstprinzipalauthentifizierung hergestellt. Die zertifikatsdatei, die durch CertficatePathangegeben wird, sollte sowohl das Zertifikat als auch den privaten Schlüssel als Eingabe enthalten.

$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

Beispiel 10: Verbinden interaktiv mithilfe von WAM

In diesem Beispiel wird veranschaulicht, wie die Konfiguration für WAM (Web Account Manager) aktiviert und zum Herstellen einer Verbindung mit Azure verwendet wird.

Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount

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

Parameter

-AccessToken

Gibt ein Zugriffstoken an.

Achtung

Zugriffstoken sind eine Art von Anmeldeinformationen. Sie sollten die geeigneten Sicherheitsvorkehrungen ergreifen, um sie vertraulich zu halten. Zugriffstoken auch Timeout und können verhindern, dass lange ausgeführte Aufgaben abgeschlossen werden.

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

-AccountId

Konto-ID/Benutzer-ID/Benutzername, um sich mit dem Parameter "Default" (UserWithSubscriptionId) anzumelden; Konto-ID für Zugriffstoken im AccessToken-Parametersatz ; Konto-ID für verwalteten Dienst im Parametersatz "ManagedService ". Dabei kann es sich um eine Ressourcen-ID des verwalteten Diensts oder um die zugeordnete Client-ID handeln. Um die vom System zugewiesene Identität zu verwenden, lassen Sie dieses Feld leer.

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

-ApplicationId

Anwendungs-ID des Dienstprinzipals.

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

-AuthScope

Optionaler OAuth-Bereich für die Anmeldung, unterstützte vordefinierte Werte: AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, OperationalInsights, Storage, Synapse. Es unterstützt auch die Ressourcen-ID wie https://storage.azure.com/.

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

-CertificatePassword

Das Kennwort, das für den Zugriff auf die Pkcs#12-Zertifikatdatei erforderlich ist.

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

-CertificatePath

Der Pfad der Zertifikatdatei im pkcs#12-Format.

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

-CertificateThumbprint

Zertifikathash oder Fingerabdruck.

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

-ContextName

Name des Standardmäßigen Azure-Kontexts für diese Anmeldung. Weitere Informationen zu Azure-Kontexten finden Sie unter Azure PowerShell-Kontextobjekte.

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

-Credential

Gibt ein PSCredential-Objekt an. Geben Sie weitere Informationen zum PSCredential-Objekt ein Get-Help Get-Credential. Das PSCredential-Objekt stellt die Benutzer-ID und das Kennwort für Anmeldeinformationen der Organisation oder die Anwendungs-ID und den geheimen Schlüssel für Dienstprinzipalanmeldeinformationen bereit.

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

-DefaultProfile

Anmeldeinformationen, Konto, Mandant und Abonnement für die Kommunikation mit Azure

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

-Environment

Umgebung, die das Azure-Konto enthält.

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

-FederatedToken

Gibt ein Token an, das von einem anderen Identitätsanbieter bereitgestellt wird. Der Aussteller und betreff in diesem Token muss zuerst so konfiguriert werden, dass er von der ApplicationId als vertrauenswürdig eingestuft wird.

Achtung

Verbundtoken sind eine Art von Anmeldeinformationen. Sie sollten die geeigneten Sicherheitsvorkehrungen ergreifen, um sie vertraulich zu halten. Partnertoken auch Timeout und möglicherweise verhindern, dass lange ausgeführte Aufgaben abgeschlossen werden.

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

-Force

Überschreiben Sie den vorhandenen Kontext ohne Aufforderung mit demselben Namen.

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

-GraphAccessToken

AccessToken für Graph Service.

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

-Identity

Melden Sie sich mit einer verwalteten Dienstidentität an.

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

-KeyVaultAccessToken

AccessToken für KeyVault Service.

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

-MaxContextPopulation

Maximale Abonnementnummer zum Auffüllen von Kontexten nach der Anmeldung. Der Standardwert ist 25. Wenn Sie alle Abonnements für Kontexte auffüllen möchten, legen Sie diesen auf -1 fest.

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

-MicrosoftGraphAccessToken

Zugriffstoken für Microsoft Graph

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

-Scope

Bestimmt den Umfang von Kontextänderungen, z. B. ob Änderungen nur für den aktuellen Prozess gelten, oder für alle Sitzungen, die von diesem Benutzer gestartet wurden.

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

-SendCertificateChain

Gibt an, ob der x5c-Anspruch (öffentlicher Schlüssel des Zertifikats) an den STS gesendet werden soll, um ein einfaches Zertifikatrollover in Azure AD zu erzielen.

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

-ServicePrincipal

Gibt an, dass sich dieses Konto authentifiziert, indem Dienstprinzipalanmeldeinformationen bereitgestellt werden.

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

-SkipContextPopulation

Überspringt die Kontextpopulation, wenn keine Kontexte gefunden werden.

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

-SkipValidation

Überprüfung für Zugriffstoken überspringen.

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

-Subscription

Abonnementname oder -ID.

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

-Tenant

Optionaler Mandantname oder die ID.

Hinweis

Aufgrund von Einschränkungen der aktuellen API müssen Sie beim Herstellen einer Verbindung mit einem Business-to-Business-Konto (B2B) eine Mandanten-ID anstelle eines Mandantennamens verwenden.

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

-UseDeviceAuthentication

Verwenden Sie die Gerätecodeauthentifizierung anstelle eines Browsersteuerelements.

Type:SwitchParameter
Aliases:DeviceCode, DeviceAuth, Device
Position:Named
Default value:None
Required:False
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

Eingaben

String

Ausgaben

PSAzureProfile