Connect-AzAccount

Herstellen einer Verbindung mit Azure mit einem authentifizierten Konto zur Verwendung mit Cmdlets aus den Az PowerShell-Modulen.

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 bereit. 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 Service Management hinzuzufügen. Wenn kein Kontext für den aktuellen Benutzer gefunden wird, wird die Kontextliste des Benutzers mit einem Kontext für jede ihrer ersten 25 Abonnements ausgefü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" an. Nach dem Ausführen dieses Cmdlets können Sie eine Verbindung mit einem Azure-Konto herstellen Disconnect-AzAccount.

Beispiele

Beispiel 1: Herstellen einer Verbindung mit 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: Herstellen einer Verbindung mit 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 speichern sie in der $Credential Variablen. Der zweite Befehl stellt eine Verbindung mit einem Azure-Konto mit den anmeldeinformationen bereit, die 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: Herstellen einer Verbindung mit Azure mithilfe eines Dienstprinzipalkontos

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 gibt an, dass das Konto als Dienstprinzipal authentifiziert wird.

$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecuredPassword
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: Herstellen einer Verbindung mit einer verwalteten Dienstidentität

In diesem Beispiel wird eine Verbindung mit der Managed Service Identity (MSI) der Hostumgebung hergestellt. Sie melden sich beispielsweise von einem virtuellen Computer mit einem zugewiesenen MSI-Computer 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 mit verwalteter 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 mit Zertifikaten

In diesem Beispiel wird eine Verbindung mit einem Azure-Konto mithilfe der zertifikatbasierten Dienstprinzipalauthentifizierung hergestellt. Der dienstprinzipal, der für die Authentifizierung verwendet wird, muss mit dem angegebenen Zertifikat erstellt werden. Weitere Informationen zum Erstellen einer selbstsignierten Zertifikate 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: Herstellen einer Verbindung mit AuthScope

AuthScope wird verwendet, um Szenario zu unterstützen, dass Datenebenenressourcen eine erweiterte Authentifizierung als ARM-Ressourcen haben, z. B. Speicheranforderungen MFA, arm jedoch nicht. Sobald AuthScope angegeben wurde, z. B. Speicher, Connect-AzAccount sich zuerst mit Speicherbereich https://storage.azure.com/anmelden und dann automatisch Token für ARM erfordern.

Connect-AzAccount -AuthScope Storage

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

Beispiel 9: Herstellen einer Verbindung mit der Zertifikatdatei

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

$securePassword = $plainPassword | ConvertTo-SecureString -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

Parameter

-AccessToken

Gibt ein Zugriffstoken an.

Achtung

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

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

Konto-ID / Benutzer-ID / Benutzername, um sich mit dem Parametersatz Standard (UserWithSubscriptionId) anzumelden; Konto-ID für Zugriffstoken in AccessToken-Parametersatz ; Konto-ID für verwalteten Dienst im Parametersatz "ManagedService ". Kann eine verwaltete Dienstressourcen-ID oder die zugeordnete Client-ID sein. Um die zugewiesene Systemidentität zu verwenden, lassen Sie dieses Feld leer.

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

Anwendungs-ID des Dienstprinzipals.

Type:String
Position:Named
Default value:None
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
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
Accept pipeline input:False
Accept wildcard characters:False
-CertificatePath

Der Pfad der Certficate-Datei im pkcs#12-Format.

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

Zertifikathash oder Fingerabdruck.

Type:String
Position:Named
Default value:None
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
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
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 Organisations-ID-Anmeldeinformationen oder die Anwendungs-ID und den geheimen Schlüssel für Dienstprinzipalanmeldeinformationen bereit.

Type:PSCredential
Position:Named
Default value:None
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
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
Accept pipeline input:False
Accept wildcard characters:False
-FederatedToken

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

Achtung

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

Type:String
Aliases:ClientAssertion
Position:Named
Default value:None
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
Accept pipeline input:False
Accept wildcard characters:False
-GraphAccessToken

AccessToken für Graph Service.

Type:String
Position:Named
Default value:None
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
Accept pipeline input:False
Accept wildcard characters:False
-KeyVaultAccessToken

AccessToken für KeyVault Service.

Type:String
Position:Named
Default value:None
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 in Kontexten auffüllen möchten, legen Sie auf -1 fest.

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

Zugriffstoken für Microsoft Graph

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

Bestimmt den Umfang der Kontextänderungen, z. B. ob Änderungen nur auf den aktuellen Prozess oder auf alle Sitzungen angewendet werden, die von diesem Benutzer gestartet wurden.

Type:ContextModificationScope
Accepted values:Process, CurrentUser
Position:Named
Default value:None
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 einen einfachen Zertifikatrollover in Azure AD zu erzielen.

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

Gibt an, dass dieses Konto durch Bereitstellen von Dienstprinzipalanmeldeinformationen authentifiziert wird.

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

Überspringt die Kontextpopulation, wenn keine Kontexte gefunden werden.

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

Überprüfung für Zugriffstoken überspringen.

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

Abonnementname oder ID.

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

Optionaler Mandantenname oder -ID.

Hinweis

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

Type:String
Aliases:Domain, TenantId
Position:Named
Default value:None
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
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
Accept pipeline input:False
Accept wildcard characters:False

Eingaben

String

Ausgaben

PSAzureProfile