Get-Credential
Kullanıcı adı ve parola temelinde bir kimlik bilgisi nesnesi alır.
Syntax
CredentialSet (Varsayılan)
Get-Credential
[[-Credential] <PSCredential>]
[<CommonParameters>]
MessageSet
Get-Credential
[[-UserName] <String>]
[-Message <String>]
[-Title <String>]
[<CommonParameters>]
Description
Get-Credential cmdlet'i, belirtilen kullanıcı adı ve parola için bir kimlik bilgisi nesnesi oluşturur. Kimlik bilgisi nesnesini güvenlik işlemlerinde kullanabilirsiniz.
Get-Credential cmdlet'i kullanıcıdan bir parola ya da kullanıcı adı ve parola talep eder. Komut satırı isteminde özelleştirilmiş bir ileti belirtmek için İleti parametresini kullanabilirsiniz.
Örnekler
Örnek 1
$c = Get-Credential
Bu komut bir kimlik bilgisi nesnesi alır ve $c değişkenine kaydeder.
Komutu girdiğinizde bir kullanıcı adı ve parola girmeniz istenir. İstenen bilgileri girdiğinizde, cmdlet kullanıcının kimlik bilgilerini temsil eden bir PSCredential nesnesi oluşturur ve $c değişkenine kaydeder.
Kimlik Bilgisi parametresine sahip olanlar gibi, kullanıcı kimlik doğrulaması isteyen cmdlet'lere giriş olarak nesnesini kullanabilirsiniz. Ancak, PowerShell ile yüklenen bazı sağlayıcılar Kimlik Bilgisi parametresini desteklemez.
Örnek 2
$c = Get-Credential -credential User01
$c.Username
User01
Bu örnek, etki alanı adı olmayan bir kullanıcı adı içeren bir kimlik bilgisi oluşturur.
İlk komut User01 kullanıcı adına sahip bir kimlik bilgisi alır ve $c değişkeninde depolar.
İkinci komut, sonuçta elde edilen kimlik bilgisi nesnesinin Username özelliğinin değerini görüntüler.
Örnek 3
$Credential = $host.ui.PromptForCredential("Need credentials", "Please enter your user name and password.", "", "NetBiosUserName")
Bu komut PromptForCredential yöntemini kullanarak kullanıcıdan kullanıcı adını ve parolasını ister. komutu, elde edilen kimlik bilgilerini $Credential değişkenine kaydeder.
PromptForCredential yöntemi, Get-Credential cmdlet'ini kullanmaya alternatiftir.
PromptForCredentialkullandığınızda, komut isteminde görüntülenen resim yazısını, iletileri ve kullanıcı adını belirtebilirsiniz.
Daha fazla bilgi için SDK'daki PromptForCredential belgelerine bakın.
Örnek 4
Bu örnek, kullanıcıya sormadan döndürülen Get-Credential nesneyle aynı olan bir kimlik bilgisi nesnesinin nasıl oluşturulacağını gösterir. Bu yöntem, bazı kuruluşlardaki güvenlik standartlarını ihlal eden düz metin bir parola gerektirir.
$User = "Domain01\User01"
$PWord = ConvertTo-SecureString -String "P@sSwOrd" -AsPlainText -Force
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $PWord
İlk komut, kullanıcı hesabı adını parametreye $User kaydeder. Değerin "Domain\User" veya "ComputerName\User" biçiminde olması gerekir.
İkinci komut, ConvertTo-SecureString düz metin parolasından güvenli bir dize oluşturmak için cmdlet'i kullanır. Komut, dizenin düz metin olduğunu belirtmek için AsPlainText parametresini ve düz metin kullanmanın risklerini anladığınızı onaylamak için Force parametresini kullanır.
Üçüncü komut, New-Object ve $PWord değişkenlerindeki değerlerden $User bir PSCredential nesnesi oluşturmak için cmdlet'i kullanır.
Örnek 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:
Bu komut, cmdlet'in İleti ve Get-Credential parametrelerini kullanır. Bu komut biçimi paylaşılan betikler ve işlevler için tasarlanmıştır. Bu durumda, ileti kullanıcıya kimlik bilgilerinin neden gerekli olduğunu bildirir ve isteğin geçerli olduğuna güven verir.
Örnek 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
Bu komut, Server01 uzak bilgisayarından bir kimlik bilgisi alır. komut, uzak bilgisayarda bir Invoke-Command komutu çalıştırmak için Get-Credential cmdlet'ini kullanır. Çıktı, Get-Credential'ın kimlik doğrulama istemine dahil edilen uzak güvenlik mesajını gösterir.
Parametreler
-Credential
User01 veya Domain01\User01gibi kimlik bilgileri için bir kullanıcı adı belirtir.
-Credentialparametre adı isteğe bağlıdır.
Komutu gönderip bir kullanıcı adı belirttiğinizde parola girmeniz istenir. Bu parametreyi atlarsanız kullanıcı adı ve parola girmeniz istenir.
PowerShell 3.0'dan itibaren, bir kullanıcı adını etki alanı olmadan girerseniz Get-Credential artık adın önüne ters eğik çizgi eklemez.
Kimlik bilgileri bir PSCredential nesnesinde depolanır ve parola SecureStringolarak depolanır.
Uyarı
SecureString veri koruması hakkında daha fazla bilgi için bkz. SecureString ne kadar güvenli?.
Parametre özellikleri
| Tür: | PSCredential |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
CredentialSet
| Position: | 1 |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Message
Kimlik doğrulama isteminde görüntülenen bir iletiyi belirtir. Bu parametre bir işlevde veya betikte kullanılmak üzere tasarlanmıştır. Kullanıcıya neden kimlik bilgileri istediğinizi ve bunların nasıl kullanılacağını açıklamak için iletiyi kullanabilirsiniz.
Bu parametre PowerShell 3.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
MessageSet
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-Title
Konsolunda kimlik doğrulaması istemi için başlık satırının metnini ayarlar.
Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | String |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
MessageSet
| Position: | Named |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
-UserName
Bir kullanıcı adı belirtir. Kimlik doğrulama istemi, kullanıcı adı için bir parola ister. Varsayılan olarak, kullanıcı adı boş olur ve kimlik doğrulama istemi hem kullanıcı adı hem de parola ister.
Bu parametre PowerShell 3.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | String |
| Default value: | None (blank) |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
MessageSet
| Position: | 1 |
| Zorunlu: | False |
| İşlem hattından gelen değer: | False |
| Özellik adına göre işlem hattından gelen değer: | False |
| Kalan bağımsız değişkenlerden elde edilen değer: | False |
CommonParameters
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
Girişler
None
Bu cmdlet'e giriş kanalı yapamazsınız.
Çıkışlar
PSCredential
Get-Credential Bir kimlik bilgisi nesnesi döndürür.
Notlar
Get-Credential parametresine sahip olanlar gibi kullanıcı kimlik doğrulaması isteyen cmdlet'lerde oluşturduğu PSCredential nesnesini kullanabilirsiniz.
Kimlik Bilgisi parametresi, PowerShell ile yüklenen tüm sağlayıcılar tarafından desteklenmez.
PowerShell 3.0'dan başlayarak, Get-Content ve New-PSDrive cmdlet'leri gibi belirli cmdlet'lerde desteklenir.