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 dikembalikan oleh Get-Credential
.
$User = "Domain01\User01"
$PWord = Read-Host -Prompt 'Enter a Password' -AsSecureString
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $PWord
Perintah pertama menetapkan nama pengguna ke $User
variabel . Pastikan nilai mengikuti format "Domain\User" atau "ComputerName\User".
Perintah kedua menggunakan Read-Host
cmdlet untuk membuat string aman dari input pengguna. Parameter Prompt meminta input pengguna, dan parameter AsSecureString menutupi input dan mengonversinya menjadi string yang aman.
Perintah ketiga menggunakan New-Object
cmdlet untuk membuat objek PSCredential dari nilai yang disimpan 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?.
Jenis: | PSCredential |
Position: | 1 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | 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.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Title
Mengatur teks baris judul untuk perintah autentikasi di konsol.
Parameter ini diperkenalkan di PowerShell 6.0.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | 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.
Jenis: | String |
Position: | 1 |
Nilai default: | None (blank) |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
Input
None
Anda tidak dapat menyalurkan objek ke cmdlet ini.
Output
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
.