Get-Credential
Egy hitelesítő objektumot kér le felhasználónév és jelszó alapján.
Syntax
Get-Credential
[[-Credential] <PSCredential>]
[<CommonParameters>]
Get-Credential
[-Message <String>]
[[-UserName] <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 a $c
változóban.
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 tárolja azt a $c
változóban.
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álata helyett. Az PromptForCredential használatakor megadhatja a parancssorban megjelenő képaláírás, üzeneteket és felhasználónevet.
További információ: PromptForCredential dokumentáció az SDK-ban.
4. példa
Ez a példa bemutatja, hogyan hozhat létre olyan hitelesítő objektumot, amely megegyezik a visszaadott objektummal anélkül, hogy Get-Credential
a felhasználót kérték. 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éterben. Az értéknek "Domain\User" vagy "ComputerName\User" formátumúnak kell lennie.
A második parancs a ConvertTo-SecureString
parancsmaggal hoz létre egy egyszerű szöveges jelszóból származó biztonságos sztringet. A parancs az AsPlainText paraméterrel jelzi, hogy a sztring egyszerű szöveg, a Force paraméter pedig 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
parancsmaggal hoz létre egy PSCredential objektumot a változók és $PWord
a $User
változók értékeiből.
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 UserName paramétereit Get-Credential
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 lekéri a hitelesítő adatokat a Server01 távoli számítógépről. A parancs a Invoke-Command
parancsmaggal futtat egy Get-Credential
parancsot a távoli számítógépen. A kimenet a hitelesítési parancssorban található távoli biztonsági üzenetet Get-Credential
jeleníti meg.
Paraméterek
-Credential
Megadja a hitelesítő adatok (például User01 vagy Domain01\User01) felhasználónevét. A paraméter neve -Credential
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
a továbbiakban nem szúr be fordított perjelet a név elé.
A hitelesítő adatokat PSCredential objektum tárolja, a jelszót pedig SecureStringként tárolja a rendszer.
Feljegyzés
További információ a SecureString adatvédelemről: Mennyire biztonságos a SecureString?.
Type: | PSCredential |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | 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.
Type: | String |
Position: | 1 |
Default value: | None (blank) |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Bevitelek
None
Ehhez a parancsmaghoz nem lehet objektumokat csövezni.
Kimenetek
Ez a parancsmag egy hitelesítő objektumot ad vissza.
Jegyzetek
Használhatja a PSCredential objektumot, amely Get-Credential
felhasználói hitelesítést kérő parancsmagokban jön létre, például hitelesítő paraméterrel rendelkező parancsmagokban.
A hitelesítőadat-paramétert nem támogatja minden, a PowerShell-lel telepített szolgáltató.
A PowerShell 3.0-tól kezdve támogatott a kiválasztott parancsmagok, például a parancsmagok és New-PSDrive
a Get-Content
parancsmagok esetén.
Kapcsolódó hivatkozások
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: