Get-Credential

Mendapatkan objek kredensial berdasarkan nama pengguna dan kata sandi.

Sintaks

Get-Credential
   [[-Credential] <PSCredential>]
   [<CommonParameters>]
Get-Credential
   [-Message <String>]
   [[-UserName] <String>]
   [-Title <String>]
   [<CommonParameters>]

Deskripsi

Get-Credential Cmdlet membuat objek kredensial untuk nama pengguna dan kata sandi tertentu. Anda dapat menggunakan objek kredensial dalam operasi keamanan.

Get-Credential Cmdlet meminta kata sandi atau nama pengguna dan kata sandi kepada pengguna. Anda dapat menggunakan parameter Pesan untuk menentukan pesan yang dikustomisasi untuk perintah.

Di Windows PowerShell 5.1 dan yang lebih lama, Windows menyajikan kotak dialog untuk meminta nama pengguna dan kata sandi. Di PowerShell 6.0 dan yang lebih baru, perintah disajikan di konsol untuk semua platform.

Contoh

Contoh 1

$c = Get-Credential

Perintah ini mendapatkan objek kredensial dan menyimpannya dalam $c variabel.

Saat Anda memasukkan perintah, Anda akan dimintai nama pengguna dan kata sandi. Saat Anda memasukkan informasi yang diminta, cmdlet membuat objek PSCredential yang mewakili kredensial pengguna dan menyimpannya dalam $c variabel.

Anda dapat menggunakan objek sebagai input ke cmdlet yang meminta autentikasi pengguna, seperti objek dengan parameter Kredensial . Namun, beberapa penyedia yang diinstal dengan PowerShell tidak mendukung parameter Kredensial .

Contoh 2

$c = Get-Credential -credential User01
$c.Username
User01

Contoh ini membuat kredensial yang menyertakan nama pengguna tanpa nama domain.

Perintah pertama mendapatkan kredensial dengan nama pengguna User01 dan menyimpannya dalam $c variabel. Perintah kedua menampilkan nilai properti Nama Pengguna dari objek kredensial yang dihasilkan.

Contoh 3

$Credential = $host.ui.PromptForCredential("Need credentials", "Please enter your user name and password.", "", "NetBiosUserName")

Perintah ini menggunakan metode PromptForCredential untuk meminta nama pengguna dan kata sandi mereka. Perintah menyimpan kredensial yang dihasilkan dalam $Credential variabel.

Metode PromptForCredential adalah alternatif untuk menggunakan Get-Credential cmdlet. Saat menggunakan PromptForCredential, Anda dapat menentukan keterangan, pesan, dan nama pengguna yang muncul di prompt.

Untuk informasi selengkapnya, lihat dokumentasi PromptForCredential di SDK.

Contoh 4

Contoh ini menunjukkan cara membuat objek kredensial yang identik dengan objek yang Get-Credential kembali tanpa meminta pengguna. Metode ini memerlukan kata sandi teks biasa, yang mungkin melanggar standar keamanan di beberapa perusahaan.

$User = "Domain01\User01"
$PWord = ConvertTo-SecureString -String "P@sSwOrd" -AsPlainText -Force
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $PWord

Perintah pertama menyimpan nama akun pengguna dalam $User parameter . Nilai harus memiliki format "Domain\User" atau "ComputerName\User".

Perintah kedua menggunakan ConvertTo-SecureString cmdlet untuk membuat string aman dari kata sandi teks biasa. Perintah menggunakan parameter AsPlainText untuk menunjukkan bahwa string adalah teks biasa dan parameter Paksa untuk mengonfirmasi bahwa Anda memahami risiko penggunaan teks biasa.

Perintah ketiga menggunakan New-Object cmdlet untuk membuat objek PSCredential dari nilai dalam $User variabel dan $PWord .

Contoh 5

Get-Credential -Message "Credential are required for access to the \\Server1\Scripts file share." -User Server01\PowerUser

PowerShell Credential Request
Credential are required for access to the \\Server1\Scripts file share.
Password for user Server01\PowerUser:

Perintah ini menggunakan parameter Pesan dan UserName cmdlet Get-Credential . Format perintah ini dirancang untuk skrip dan fungsi bersama. Dalam hal ini, pesan memberi tahu pengguna mengapa kredensial diperlukan dan memberi mereka keyakinan bahwa permintaan tersebut sah.

Contoh 6

Invoke-Command -ComputerName Server01 {Get-Credential Domain01\User02}

PowerShell Credential Request : PowerShell Credential Request
Warning: This credential is being requested by a script or application on the SERVER01 remote computer.
Enter your credentials only if you trust the remote computer and the application or script requesting it.

Enter your credentials.
Password for user Domain01\User02: ***************

PSComputerName     : Server01
RunspaceId         : 422bdf52-9886-4ada-ab2f-130497c6777f
PSShowComputerName : True
UserName           : Domain01\User01
Password           : System.Security.SecureString

Perintah ini mendapatkan kredensial dari komputer jarak jauh Server01. Perintah menggunakan Invoke-Command cmdlet untuk menjalankan Get-Credential perintah pada komputer jarak jauh. Output menunjukkan pesan keamanan jarak jauh yang Get-Credential disertakan dalam perintah autentikasi.

Parameter

-Credential

Menentukan nama pengguna untuk kredensial, seperti User01 atau Domain01\User01. Nama parameter, -Credential, bersifat opsional.

Saat Anda mengirimkan perintah dan menentukan nama pengguna, Anda akan dimintai kata sandi. Jika Anda menghilangkan parameter ini, Anda akan dimintai nama pengguna dan kata sandi.

Dimulai di PowerShell 3.0, jika Anda memasukkan nama pengguna tanpa domain, Get-Credential tidak lagi menyisipkan garis miring terbelakang sebelum namanya.

Kredensial disimpan dalam objek PSCredential dan kata sandi disimpan sebagai SecureString.

Catatan

Untuk informasi selengkapnya tentang perlindungan data SecureString , lihat Seberapa aman SecureString?.

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

-Message

Menentukan pesan yang muncul di prompt autentikasi. Parameter ini dirancang untuk digunakan dalam fungsi atau skrip. Anda dapat menggunakan pesan untuk menjelaskan kepada pengguna mengapa Anda meminta kredensial dan bagaimana mereka akan digunakan.

Parameter ini diperkenalkan di PowerShell 3.0.

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

-Title

Mengatur teks baris judul untuk perintah autentikasi di konsol.

Parameter ini diperkenalkan di PowerShell 6.0.

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

-UserName

Menentukan nama pengguna. Permintaan autentikasi meminta kata sandi untuk nama pengguna. Secara default, nama pengguna kosong dan permintaan autentikasi meminta nama pengguna dan kata sandi.

Parameter ini diperkenalkan di PowerShell 3.0.

Type:String
Position:1
Default value:None (blank)
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

None

Anda tidak dapat menyalurkan objek ke cmdlet ini.

Output

PSCredential

Cmdlet ini mengembalikan objek kredensial.

Catatan

Anda dapat menggunakan objek PSCredential yang Get-Credential dibuat dalam cmdlet yang meminta autentikasi pengguna, seperti yang memiliki parameter Kredensial .

Parameter Kredensial tidak didukung oleh semua penyedia yang diinstal dengan PowerShell. Dimulai di PowerShell 3.0, ini didukung pada cmdlet tertentu, seperti Get-Content cmdlet dan New-PSDrive .