Get-Credential
Egy hitelesítő objektumot kér le felhasználónév és jelszó alapján.
Syntax
CredentialSet (Alapértelmezett)
Get-Credential
[[-Credential] <PSCredential>]
[<CommonParameters>]
MessageSet
Get-Credential
[[-UserName] <String>]
[-Message <String>]
[-Title <String>]
[<CommonParameters>]
Description
A Get-Credential parancsmag létrehoz egy hitelesítő objektumot egy megadott felhasználónévhez és jelszóhoz. A hitelesítő objektumot a biztonsági műveletekben is használhatja.
A Get-Credential parancsmag jelszót vagy felhasználónevet és jelszót kér a felhasználótól. Az Üzenet paraméterrel testre szabott üzenetet adhat meg a kéréshez.
A Windows PowerShell 5.1-ben és korábbi verzióiban a Windows egy párbeszédpanelt jelenít meg, amely a felhasználónév és a jelszó megadását kéri. A PowerShell 6.0-s és újabb verzióiban a parancssor minden platform konzolján megjelenik.
Példák
1. példa
$c = Get-Credential
Ez a parancs lekéri a hitelesítő objektumot, és menti azt a $c változóba.
A parancs megadásakor a rendszer kérni fogja a felhasználónevet és a jelszót. A kért adatok megadásakor a parancsmag létrehoz egy PSCredential objektumot, amely a felhasználó hitelesítő adatait jelöli, és menti azokat a $c változóba.
Az objektumot bemenetként használhatja a felhasználói hitelesítést kérő parancsmagokhoz, például a Hitelesítő adatok paraméterrel rendelkező parancsmagokhoz. A PowerShell-lel telepített egyes szolgáltatók azonban nem támogatják a Hitelesítő adatok paramétert.
2. példa
$c = Get-Credential -credential User01
$c.Username
User01
Ez a példa létrehoz egy hitelesítő adatot, amely tartománynév nélküli felhasználónevet tartalmaz.
Az első parancs lekéri a User01 felhasználónévvel rendelkező hitelesítő adatokat, és a $c változóban tárolja.
A második parancs megjeleníti az eredményül kapott hitelesítőadat-objektum Felhasználónév tulajdonságának értékét.
3. példa
$Credential = $host.ui.PromptForCredential("Need credentials", "Please enter your user name and password.", "", "NetBiosUserName")
Ez a parancs a PromptForCredential metódus használatával kéri a felhasználótól a felhasználónevet és a jelszót. A parancs menti az eredményként kapott hitelesítő adatokat a $Credential változóban.
A PromptForCredential metódus alternatíva a Get-Credential parancsmag használatára. Ha PromptForCredentialhasznál, megadhatja a parancssorban megjelenő feliratot, üzeneteket és felhasználónevet.
További információ: PromptForCredential dokumentációja az SDK-ban.
4. példa
Ez a példa bemutatja, hogyan hozhat létre olyan hitelesítőadat-objektumot, amely megegyezik a felhasználó kérése nélkül visszaadott objektummal Get-Credential . Ez a módszer egyszerű szöveges jelszót igényel, ami egyes vállalatok biztonsági előírásait sértheti.
$User = "Domain01\User01"
$PWord = ConvertTo-SecureString -String "P@sSwOrd" -AsPlainText -Force
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $PWord
Az első parancs menti a felhasználói fiók nevét a $User paraméterbe. Az értéknek "Domain\User" vagy "ComputerName\User" formátumúnak kell lennie.
A második parancs a ConvertTo-SecureString parancsmag használatával biztonságos sztringet hoz létre egyszerű szöveges jelszóból. A parancs az AsPlainText paraméterrel jelzi, hogy a sztring egyszerű szöveg, a Kényszerítse paramétert annak ellenőrzésére, hogy tisztában van-e az egyszerű szöveg használatának kockázataival.
A harmadik parancs a New-Object parancsmag használatával hoz létre egy PSCredential objektumot a változók és értékeiből $User$PWord .
5. példa
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:
Ez a parancs a -parancsmag Message és Get-Credential paraméterét használja. Ez a parancsformátum megosztott szkriptekhez és függvényekhez készült. Ebben az esetben az üzenet tájékoztatja a felhasználót arról, hogy miért van szükség hitelesítő adatokra, és biztosítja számukra, hogy a kérés jogos.
6. példa
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
Ez a parancs a Server01 távoli számítógépről kéri le a hitelesítő adatokat. A parancs a Invoke-Command parancsmaggal futtat egy Get-Credential parancsot a távoli számítógépen. A kimenet a Get-Credential által a hitelesítési felszólításban szereplő távoli biztonsági üzenetet jeleníti meg.
Paraméterek
-Credential
Adja meg a hitelesítő adatokhoz tartozó felhasználónevet, például User01 vagy Domain01\User01. A paraméter neve (-Credential) megadása nem kötelező.
Amikor elküldi a parancsot, és megadja a felhasználónevet, a rendszer jelszót kér. Ha kihagyja ezt a paramétert, a rendszer egy felhasználónevet és egy jelszót kér.
A PowerShell 3.0-tól kezdve, ha tartomány nélküli felhasználónevet ad meg, Get-Credential már nem szúr be fordított perjelet a név elé.
A hitelesítő adatokat egy PSCredential objektum tárolja, a jelszó pedig SecureString.
Megjegyzés:
További információért a SecureString adatvédelemről lásd: Mennyire biztonságos a SecureString?.
Paramétertulajdonságok
| Típus: | PSCredential |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
CredentialSet
| Position: | 1 |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Message
A hitelesítési parancssorban megjelenő üzenetet adja meg. Ezt a paramétert egy függvényben vagy szkriptben való használatra tervezték. Az üzenet segítségével elmagyarázhatja a felhasználónak, hogy miért kér hitelesítő adatokat, és hogyan fogják használni őket.
Ezt a paramétert a PowerShell 3.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
MessageSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Title
Beállítja a konzolon a hitelesítési kérés címsorának szövegét.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
MessageSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-UserName
Felhasználónevet ad meg. A hitelesítési kérés jelszót kér a felhasználónévhez. Alapértelmezés szerint a felhasználónév üres, és a hitelesítési kérés felhasználónevet és jelszót is kér.
Ezt a paramétert a PowerShell 3.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None (blank) |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
MessageSet
| Position: | 1 |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
None
Ehhez a parancsmaghoz nem lehet objektumokat csövezni.
Kimenetek
PSCredential
Ez a parancsmag egy hitelesítő objektumot ad vissza.
Jegyzetek
Használhatja a PSCredential objektumot, amelyet Get-Credential felhasználói hitelesítést kérő parancsmagokban hoz létre, például a hitelesítő adatok paraméterrel rendelkező.
A Hitelesítő adatok paramétert a PowerShell-lel telepített összes szolgáltató nem támogatja.
A PowerShell 3.0-tól kezdve támogatott bizonyos parancsmagokon, például a Get-Content és New-PSDrive parancsmagokon.