Delen via


Connect-AzAccount

Maak verbinding met Azure met een geverifieerd account voor gebruik met cmdlets uit de Az PowerShell-modules.

Syntaxis

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

De Connect-AzAccount cmdlet maakt verbinding met Azure met een geverifieerd account voor gebruik met cmdlets uit de Az PowerShell-modules. U kunt dit geverifieerde account alleen gebruiken met Azure Resource Manager-aanvragen. Als u een geverifieerd account wilt toevoegen voor gebruik met Service Management, gebruikt u de Add-AzureAccount cmdlet uit de Azure PowerShell-module. Als er geen context wordt gevonden voor de huidige gebruiker, wordt de contextlijst van de gebruiker gevuld met een context voor elk van hun eerste 25 abonnementen. De lijst met contexten die voor de gebruiker zijn gemaakt, kunt u vinden door de opdracht uit te voeren Get-AzContext -ListAvailable. Als u deze contextpopulatie wilt overslaan, geeft u de switchparameter SkipContextPopulation op . Nadat u deze cmdlet hebt uitgevoerd, kunt u de verbinding met een Azure-account verbreken met behulp van Disconnect-AzAccount.

Voorbeelden

Voorbeeld 1: Verbinding maken met een Azure-account

In dit voorbeeld wordt verbinding gemaakt met een Azure-account. U moet een Microsoft-account of organisatie-id-referenties opgeven. Als meervoudige verificatie is ingeschakeld voor uw referenties, moet u zich aanmelden met behulp van de interactieve optie of service-principal-verificatie gebruiken.

Connect-AzAccount

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

Voorbeeld 2: Verbinding maken met Azure met behulp van organisatie-id-referenties

Dit scenario werkt alleen als de gebruiker geen meervoudige verificatie heeft ingeschakeld. De eerste opdracht vraagt om gebruikersreferenties en slaat deze op in de $Credential variabele. De tweede opdracht maakt verbinding met een Azure-account met behulp van de referenties die zijn opgeslagen in $Credential. Dit account verifieert met Azure met behulp van organisatie-id-referenties.

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

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

Voorbeeld 3: Verbinding maken met Azure met behulp van een service-principal-account

Met deze opdracht worden de referenties van de service-principal opgeslagen in de $Credential variabele. Vervolgens maakt deze verbinding met de opgegeven Azure-tenant met behulp van de referenties van de service-principal die zijn opgeslagen in de $Credential variabele. De parameter ServicePrincipal-switch geeft aan dat het account wordt geverifieerd als een service-principal.

$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

Voorbeeld 4: Een interactieve aanmelding gebruiken om verbinding te maken met een specifieke tenant en een specifiek abonnement

In dit voorbeeld wordt verbinding gemaakt met een Azure-account met de opgegeven tenant en het opgegeven abonnement.

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

Voorbeeld 5: Verbinding maken met een Managed Service Identity

In dit voorbeeld wordt verbinding gemaakt met behulp van een door het systeem toegewezen Managed Service Identity (MSI) van de hostomgeving. U meldt zich bijvoorbeeld aan bij Azure vanaf een virtuele machine met een toegewezen MSI.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

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

Voorbeeld 6: Verbinding maken met managed Service Identity-aanmelding en ClientId

In dit voorbeeld wordt verbinding gemaakt met behulp van de Managed Service Identity van myUserAssignedIdentity. Hiermee wordt de door de gebruiker toegewezen identiteit toegevoegd aan de virtuele machine en wordt vervolgens verbinding gemaakt met behulp van de ClientId van de door de gebruiker toegewezen identiteit. Zie Beheerde identiteiten configureren voor Azure-resources op een Azure-VM voor meer informatie.

$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

Voorbeeld 7: Verbinding maken met behulp van certificaten

In dit voorbeeld wordt verbinding gemaakt met een Azure-account met behulp van verificatie op basis van een service-principal op basis van certificaten. De service-principal die wordt gebruikt voor verificatie, moet worden gemaakt met het opgegeven certificaat. Zie Azure PowerShell gebruiken om een service-principal te maken met een certificaat voor meer informatie over het maken van zelfondertekende certificaten en het toewijzen van deze machtigingen

$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

Voorbeeld 8: Verbinding maken met AuthScope

AuthScope wordt gebruikt voor het ondersteunen van scenario's dat gegevensvlakresources verbeterde verificatie hebben dan ARM-resources, zoals opslag MFA nodig heeft, maar ARM niet. Zodra AuthScope is opgegeven, bijvoorbeeld Storage, meldt Connect-AzAccount zich eerst aan met het opslagbereik https://storage.azure.com/en vereist het token op de achtergrond voor ARM.

Connect-AzAccount -AuthScope Storage

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

Voorbeeld 9: Verbinding maken met behulp van certificaatbestand

In dit voorbeeld wordt verbinding gemaakt met een Azure-account met behulp van verificatie op basis van een service-principal op basis van certificaten. Het certificaatbestand, dat is opgegeven door CertficatePath, moet zowel het certificaat als de persoonlijke sleutel als de invoer bevatten.

$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

Voorbeeld 10: Interactief verbinding maken met WAM

In dit voorbeeld ziet u hoe u de configuratie voor WAM (Web Account Manager) inschakelt en gebruikt om verbinding te maken met Azure.

Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount

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

Parameters

-AccessToken

Hiermee geeft u een toegangstoken op.

Let op

Toegangstokens zijn een type referentie. U moet de juiste beveiligingsmaatregel nemen om ze vertrouwelijk te houden. Er is ook een time-out opgetreden voor toegangstokens en kan voorkomen dat langlopende taken worden voltooid.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-AccountId

Account-id / gebruikers-id / gebruikersnaam waarmee u zich wilt aanmelden bij de parameterset Default (UserWithSubscriptionId; Account-id voor toegangstoken in de parameterset AccessToken ; Account-id voor beheerde service in de parameterset ManagedService . Kan een beheerde serviceresource-id of de bijbehorende client-id zijn. Als u de door het systeem toegewezen identiteit wilt gebruiken, laat u dit veld leeg.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ApplicationId

Toepassings-id van de service-principal.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-AuthScope

Optioneel OAuth-bereik voor aanmelding, ondersteunde vooraf gedefinieerde waarden: AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, OperationalInsights, Storage, Synapse. Het ondersteunt ook de resource-id, zoals https://storage.azure.com/.

Type:String
Aliassen:AuthScopeTypeName
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CertificatePassword

Het wachtwoord dat is vereist voor toegang tot het pkcs#12-certificaatbestand.

Type:SecureString
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CertificatePath

Het pad naar het certificaatbestand in pkcs#12-indeling.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-CertificateThumbprint

Certificaat-hash of vingerafdruk.

Type:String
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ContextName

Naam van de standaard Azure-context voor deze aanmelding. Zie Azure PowerShell-contextobjecten voor meer informatie over Azure-contexten.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Hiermee geeft u een PSCredential-object . Typ voor meer informatie over het PSCredential-objectGet-Help Get-Credential. Het PSCredential-object biedt de gebruikers-id en het wachtwoord voor organisatie-id-referenties, of de toepassings-id en het geheim voor referenties van de service-principal.

Type:PSCredential
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DefaultProfile

De referenties, accounts, tenants en abonnementen die worden gebruikt voor communicatie met Azure.

Type:IAzureContextContainer
Aliassen:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Environment

Omgeving met het Azure-account.

Type:String
Aliassen:EnvironmentName
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-FederatedToken

Hiermee geeft u een token op dat wordt geleverd door een andere id-provider. De uitgever en het onderwerp in dit token moeten eerst worden geconfigureerd om te worden vertrouwd door de ApplicationId.

Let op

Federatieve tokens zijn een type referentie. U moet de juiste beveiligingsmaatregel nemen om ze vertrouwelijk te houden. Federatieve tokens time-outs en kunnen voorkomen dat langlopende taken worden voltooid.

Type:String
Aliassen:ClientAssertion
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Force

Overschrijf de bestaande context met dezelfde naam zonder dat u hierom wordt gevraagd.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-GraphAccessToken

AccessToken voor Graph Service.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Identity

Meld u aan met een Managed Service Identity.

Type:SwitchParameter
Aliassen:MSI, ManagedService
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-KeyVaultAccessToken

AccessToken voor KeyVault Service.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-MaxContextPopulation

Maximum aantal abonnementen om contexten te vullen na aanmelding. Standaardaantal is 25. Als u alle abonnementen op contexten wilt vullen, stelt u in op -1.

Type:Int32
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-MicrosoftGraphAccessToken

Toegangstoken naar Microsoft Graph

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Scope

Bepaalt het bereik van contextwijzigingen, bijvoorbeeld of wijzigingen alleen van toepassing zijn op het huidige proces of op alle sessies die door deze gebruiker zijn gestart.

Type:ContextModificationScope
Geaccepteerde waarden:Process, CurrentUser
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-SendCertificateChain

Hiermee geeft u op of de x5c-claim (openbare sleutel van het certificaat) naar de STS moet worden verzonden om eenvoudige certificaatrollover in Azure AD te bereiken.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-ServicePrincipal

Geeft aan dat dit account wordt geverifieerd door referenties voor de service-principal op te geven.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-SkipContextPopulation

Hiermee wordt de contextpopulatie overgeslagen als er geen contexten worden gevonden.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-SkipValidation

Validatie voor toegangstoken overslaan.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Subscription

Abonnementsnaam of -id.

Type:String
Aliassen:SubscriptionName, SubscriptionId
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Tenant

Optionele tenantnaam of -id.

Notitie

Vanwege beperkingen van de huidige API moet u een tenant-id gebruiken in plaats van een tenantnaam wanneer u verbinding maakt met een B2B-account (Business-to-Business).

Type:String
Aliassen:Domain, TenantId
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-UseDeviceAuthentication

Gebruik verificatie van apparaatcode in plaats van een browserbesturing.

Type:SwitchParameter
Aliassen:DeviceCode, DeviceAuth, Device
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

String

Uitvoerwaarden

PSAzureProfile