Connect-AzAccount

Koneksi ke Azure dengan akun terautentikasi untuk digunakan dengan cmdlet dari modul Az PowerShell.

Sintaks

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

Deskripsi

Connect-AzAccount Cmdlet terhubung ke Azure dengan akun terautentikasi untuk digunakan dengan cmdlet dari modul Az PowerShell. Anda hanya dapat menggunakan akun terautentikasi ini dengan permintaan Azure Resource Manager. Untuk menambahkan akun terautentikasi untuk digunakan dengan Manajemen Layanan, gunakan Add-AzureAccount cmdlet dari modul Azure PowerShell. Jika tidak ada konteks yang ditemukan untuk pengguna saat ini, daftar konteks pengguna diisi dengan konteks untuk masing-masing dari 25 langganan pertama mereka. Daftar konteks yang dibuat untuk pengguna dapat ditemukan dengan menjalankan Get-AzContext -ListAvailable. Untuk melewati populasi konteks ini, tentukan parameter sakelar SkipContextPopulation . Setelah menjalankan cmdlet ini, Anda dapat memutuskan sambungan dari akun Azure menggunakan Disconnect-AzAccount.

Contoh

Contoh 1: Koneksi ke akun Azure

Contoh ini tersambung ke akun Azure. Anda harus memberikan kredensial akun Microsoft atau ID organisasi. Jika autentikasi multifaktor diaktifkan untuk kredensial Anda, Anda harus masuk menggunakan opsi interaktif atau menggunakan autentikasi perwakilan layanan.

Connect-AzAccount

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

Contoh 2: Koneksi ke Azure menggunakan kredensial ID organisasi

Skenario ini hanya berfungsi ketika pengguna tidak mengaktifkan autentikasi multifaktor. Perintah pertama meminta kredensial pengguna dan menyimpannya dalam $Credential variabel. Perintah kedua tersambung ke akun Azure menggunakan kredensial yang disimpan di $Credential. Akun ini mengautentikasi dengan Azure menggunakan kredensial ID organisasi.

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

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

Contoh 3: Koneksi ke Azure menggunakan akun perwakilan layanan

Perintah pertama menyimpan kredensial perwakilan layanan dalam $Credential variabel. Perintah kedua menghubungkan penyewa Azure yang ditentukan menggunakan kredensial perwakilan layanan yang disimpan dalam $Credential variabel. Parameter sakelar ServicePrincipal menunjukkan bahwa akun mengautentikasi sebagai perwakilan layanan.

$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

Contoh 4: Gunakan login interaktif untuk menyambungkan ke penyewa dan langganan tertentu

Contoh ini tersambung ke akun Azure dengan penyewa dan langganan yang ditentukan.

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

Contoh 5: Koneksi menggunakan Identitas Layanan Terkelola

Contoh ini terhubung menggunakan Identitas Layanan Terkelola (MSI) yang ditetapkan sistem dari lingkungan host. Misalnya, Anda masuk ke Azure dari komputer virtual yang memiliki MSI yang ditetapkan.

Connect-AzAccount -Identity
Set-AzContext -Subscription Subscription1

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

Contoh 6: Koneksi menggunakan login Identitas Layanan Terkelola dan ClientId

Contoh ini terhubung menggunakan Identitas Layanan Terkelola myUserAssignedIdentity. Ini menambahkan identitas yang ditetapkan pengguna ke mesin virtual, lalu menghubungkan menggunakan ClientId dari identitas yang ditetapkan pengguna. Untuk informasi selengkapnya, lihat Mengonfigurasi identitas terkelola untuk sumber daya Azure di Azure VM.

$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

Contoh 7: Koneksi menggunakan sertifikat

Contoh ini tersambung ke akun Azure menggunakan autentikasi perwakilan layanan berbasis sertifikat. Perwakilan layanan yang digunakan untuk autentikasi harus dibuat dengan sertifikat yang ditentukan. Untuk informasi selengkapnya tentang membuat sertifikat yang ditandatangani sendiri dan menetapkannya izin, lihat Menggunakan Azure PowerShell untuk membuat perwakilan layanan dengan sertifikat

$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

Contoh 8: Koneksi dengan AuthScope

AuthScope digunakan untuk mendukung skenario bahwa sumber daya data plane memiliki autentikasi yang ditingkatkan daripada sumber daya ARM, misalnya penyimpanan membutuhkan MFA tetapi ARM tidak. Setelah AuthScope ditentukan, misalnya Storage, Koneksi-AzAccount akan terlebih dahulu masuk dengan cakupan https://storage.azure.com/penyimpanan , lalu secara diam-diam memerlukan token untuk ARM.

Connect-AzAccount -AuthScope Storage

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

Contoh 9: Koneksi menggunakan file sertifikat

Contoh ini tersambung ke akun Azure menggunakan autentikasi perwakilan layanan berbasis sertifikat. File sertifikat, yang ditentukan oleh CertficatePath, harus berisi sertifikat dan kunci privat sebagai input.

$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

Contoh 10: Koneksi secara interaktif menggunakan WAM

Contoh ini menunjukkan cara mengaktifkan konfigurasi untuk WAM (Pengelola Akun Web) dan menggunakannya untuk menyambungkan ke Azure.

Update-AzConfig -EnableLoginByWam $true
Connect-AzAccount

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

Parameter

-AccessToken

Menentukan token akses.

Perhatian

Token akses adalah jenis kredensial. Anda harus mengambil tindakan pencegahan keamanan yang sesuai untuk menjaga kerahasiaannya. Token akses juga kehabisan waktu dan dapat mencegah tugas yang berjalan lama selesai.

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

-AccountId

Id Akun / Id Pengguna / Nama Pengguna untuk masuk dengan parameter Default (UserWithSubscriptionId) yang ditetapkan; ID Akun untuk token akses dalam set parameter AccessToken ; ID Akun untuk layanan terkelola dalam set parameter ManagedService . Dapat berupa ID sumber daya layanan terkelola, atau ID klien terkait. Untuk menggunakan identitas yang ditetapkan sistem, biarkan bidang ini kosong.

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

-ApplicationId

ID aplikasi perwakilan layanan.

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

-AuthScope

Cakupan OAuth opsional untuk masuk, nilai yang telah ditentukan sebelumnya yang didukung: AadGraph, AnalysisServices, Attestation, Batch, DataLake, KeyVault, OperationalInsights, Storage, Synapse. Ini juga mendukung id sumber daya seperti https://storage.azure.com/.

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

-CertificatePassword

Kata sandi yang diperlukan untuk mengakses file sertifikat pkcs#12.

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

-CertificatePath

Jalur file sertifikasi dalam format pkcs#12.

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

-CertificateThumbprint

Hash Sertifikat atau Thumbprint.

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

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

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

-ContextName

Nama konteks Azure default untuk masuk ini. Untuk informasi selengkapnya tentang konteks Azure, lihat Objek konteks Azure PowerShell.

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

-Credential

Menentukan objek PSCredential. Untuk informasi selengkapnya tentang objek PSCredential , ketik Get-Help Get-Credential. Objek PSCredential menyediakan ID pengguna dan kata sandi untuk kredensial ID organisasi, atau ID aplikasi dan rahasia untuk kredensial perwakilan layanan.

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

-DefaultProfile

Kredensial, akun, penyewa, dan langganan yang digunakan untuk komunikasi dengan Azure.

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

-Environment

Lingkungan yang berisi akun Azure.

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

-FederatedToken

Menentukan token yang disediakan oleh penyedia identitas lain. Penerbit dan subjek dalam token ini harus terlebih dahulu dikonfigurasi agar dipercaya oleh ApplicationId.

Perhatian

Token gabungan adalah jenis kredensial. Anda harus mengambil tindakan pencegahan keamanan yang sesuai untuk menjaga kerahasiaannya. Token federasi juga kehabisan waktu dan dapat mencegah tugas yang berjalan lama selesai.

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

-Force

Timpa konteks yang ada dengan nama yang sama tanpa meminta.

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

-GraphAccessToken

AccessToken untuk Layanan Graph.

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

-Identity

Masuk menggunakan Identitas Layanan Terkelola.

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

-KeyVaultAccessToken

AccessToken untuk Layanan KeyVault.

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

-MaxContextPopulation

Nomor langganan maksimum untuk mengisi konteks setelah masuk. Defaultnya adalah 25. Untuk mengisi semua langganan ke konteks, atur ke -1.

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

-MicrosoftGraphAccessToken

Token akses ke Microsoft Graph

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

-Scope

Menentukan cakupan perubahan konteks, misalnya, apakah perubahan hanya berlaku untuk proses saat ini, atau untuk semua sesi yang dimulai oleh pengguna ini.

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

-SendCertificateChain

Menentukan apakah klaim x5c (kunci umum sertifikat) harus dikirim ke STS untuk mencapai rollover sertifikat yang mudah di Azure AD.

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

-ServicePrincipal

Menunjukkan bahwa akun ini mengautentikasi dengan memberikan kredensial perwakilan layanan.

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

-SkipContextPopulation

Lewati populasi konteks jika tidak ada konteks yang ditemukan.

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

-SkipValidation

Lewati validasi untuk token akses.

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

-Subscription

Nama langganan atau ID.

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

-Tenant

Nama atau ID penyewa opsional.

Catatan

Karena keterbatasan API saat ini, Anda harus menggunakan ID penyewa alih-alih nama penyewa saat menyambungkan dengan akun business-to-business (B2B).

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

-UseDeviceAuthentication

Gunakan autentikasi kode perangkat alih-alih kontrol browser.

Type:SwitchParameter
Aliases:DeviceCode, DeviceAuth, Device
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

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

Input

String

Output

PSAzureProfile