ConvertTo-SecureString
Egyszerű vagy titkosított sztringeket alakít át biztonságos sztringekké.
Syntax
Secure (Alapértelmezett)
ConvertTo-SecureString
[-String] <String>
[[-SecureKey] <SecureString>]
[<CommonParameters>]
PlainText
ConvertTo-SecureString
[-String] <String>
[-AsPlainText]
[-Force]
[<CommonParameters>]
Open
ConvertTo-SecureString
[-String] <String>
[-Key <Byte[]>]
[<CommonParameters>]
Description
A ConvertTo-SecureString parancsmag biztonságos sztringekké alakítja a titkosított standard sztringeket. Egyszerű szöveget is képes biztonságos sztringekké alakítani. Ez a ConvertFrom-SecureString és a Read-Host-tal használható. A parancsmag által létrehozott biztonságos sztring olyan parancsmagokkal vagy függvényekkel használható, amelyek SecureStringtípusú paramétert igényelnek. A biztonságos sztring a ConvertFrom-SecureString parancsmaggal visszakonfigurálható titkosított, standard sztringgé. Ez lehetővé teszi, hogy egy fájlban tárolhassuk későbbi felhasználásra.
Ha a konvertált standard sztringet egy megadott kulccsal titkosították ConvertFrom-SecureString, akkor ugyanazt a kulcsot kell megadni, mint a Kulcs vagy SecureKey paraméter értékét a ConvertTo-SecureString parancsmagban.
Megjegyzés:
További információért a SecureString adatvédelemről lásd: Mennyire biztonságos a SecureString?.
Példák
1. példa: Biztonságos sztring konvertálása titkosított sztringgé
Ez a példa bemutatja, hogyan hozhat létre biztonságos sztringet a felhasználói bemenetből, hogyan konvertálhatja a biztonságos sztringet titkosított standard sztringgé, majd hogyan konvertálhatja vissza a titkosított standard sztringet biztonságos sztringgé.
PS C:\> $Secure = Read-Host -AsSecureString
PS C:\> $Secure
System.Security.SecureString
PS C:\> $Encrypted = ConvertFrom-SecureString -SecureString $Secure
PS C:\> $Encrypted
01000000d08c9ddf0115d1118c7a00c04fc297eb010000001a114d45b8dd3f4aa11ad7c0abdae98000000000
02000000000003660000a8000000100000005df63cea84bfb7d70bd6842e7efa79820000000004800000a000
000010000000f10cd0f4a99a8d5814d94e0687d7430b100000008bf11f1960158405b2779613e9352c6d1400
0000e6b7bf46a9d485ff211b9b2a2df3bd6eb67aae41
PS C:\> $Secure2 = ConvertTo-SecureString -String $Encrypted
PS C:\> $Secure2
System.Security.SecureString
Az első parancs a parancsmag Read-Host paraméterét használja egy biztonságos sztring létrehozásához. A parancs megadása után a beírt karakterek biztonságos sztringgé alakulnak, majd a $Secure változóba kerülnek.
A második parancs megjeleníti a $Secure változó tartalmát. Mivel a $Secure változó tartalmaz egy biztonságos sztringet, a PowerShell csak a System.Security.SecureString típust jeleníti meg.
A harmadik parancs a ConvertFrom-SecureString parancsmaggal konvertálja az $Secure változóban lévő biztonságos sztringet titkosított standard sztringgé. Az eredményt a $Encrypted változóba menti.
A negyedik parancs megjeleníti a titkosított sztringet a $Encrypted változó értékében.
Az ötödik parancs a ConvertTo-SecureString parancsmagot használja a $Encrypted változó titkosított standard sztringjének biztonságos sztringgé alakításához. Az eredményt a $Secure2 változóba menti. A hatodik parancs megjeleníti a $Secure2 változó értékét. A SecureString típus azt jelzi, hogy a parancs sikeres volt.
2. példa: Biztonságos sztring létrehozása titkosított sztringből egy fájlban
Ez a példa bemutatja, hogyan hozhat létre biztonságos sztringet egy fájlba mentett titkosított standard sztringből.
$Secure = Read-Host -AsSecureString
$Encrypted = ConvertFrom-SecureString -SecureString $Secure -Key (1..16)
$Encrypted | Set-Content Encrypted.txt
$Secure2 = Get-Content Encrypted.txt | ConvertTo-SecureString -Key (1..16)
Az első parancs a parancsmag Read-Host paraméterét használja egy biztonságos sztring létrehozásához. A parancs megadása után a beírt karakterek biztonságos sztringgé alakulnak, majd a $Secure változóba kerülnek.
A második parancs a ConvertFrom-SecureString parancsmaggal konvertálja a $Secure változóban lévő biztonságos sztringet titkosított standard sztringgé a megadott kulccsal. A rendszer a tartalmat a $Encrypted változóba menti.
A harmadik parancs egy folyamatkezelő (|) használatával küldi el a $Encrypted változó értékét a Set-Content parancsmagba, amely menti az értéket a Encrypted.txt fájlban.
A negyedik parancs a Get-Content parancsmagot használja a titkosított standard sztring lekéréséhez a Encrypted.txt fájlban. A parancs egy folyamatkezelővel küldi el a titkosított sztringet a ConvertTo-SecureString parancsmagnak, amely a megadott kulccsal biztonságos sztringgé alakítja át.
Az eredményeket a rendszer a $Secure2 változóba menti.
3. példa: Egyszerű szöveges sztring átalakítása biztonságos sztringgé
Ez a parancs biztonságos sztringgé alakítja az egyszerű szöveges sztringet P@ssW0rD!, és az eredményt a $Secure_String_Pwd változóban tárolja.
A PowerShell 7-től kezdve a Force paraméter nem szükséges az AsPlainText paraméter használatakor. A Force paramétert is beleértve azonban biztosítja, hogy az utasítás kompatibilis legyen a korábbi verziókkal.
$Secure_String_Pwd = ConvertTo-SecureString "P@ssW0rD!" -AsPlainText -Force
Figyelmeztetés
Ne használjon egyszerű szöveges sztringeket a szkriptben vagy a parancssorban. Az egyszerű szöveg megjeleníthető az eseménynaplókban és a parancselőzmény-naplókban.
Paraméterek
-AsPlainText
Egyszerű szöveges sztringet ad meg, amely biztonságos sztringgé alakítható át. A biztonságos parancsmagok segítenek a bizalmas szövegek védelmében. A szöveg titkosítva van az adatvédelem érdekében, és használat után törlődik a számítógép memóriájából. Ha ezt a paramétert egyszerű szöveg bevitelére használja, a rendszer nem tudja ilyen módon védeni ezt a bemenetet.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
PlainText
| 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 |
-Force
A PowerShell 7-től kezdve a Force paraméter már nem szükséges az AsPlainText paraméter használatakor. Bár a paraméter nincs használatban, nem lett eltávolítva, hogy kompatibilitást biztosítson a PowerShell korábbi verzióival.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
PlainText
| Position: | 2 |
| 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 |
-Key
Megadja az eredeti biztonságos sztring titkosított standard sztringgé alakításához használt titkosítási kulcsot. Az érvényes kulcshosszok 16, 24 és 32 bájt.
Paramétertulajdonságok
| Típus: | Byte[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
Open
| 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 |
-SecureKey
Megadja az eredeti biztonságos sztring titkosított standard sztringgé alakításához használt titkosítási kulcsot. A kulcsot biztonságos sztring formátumban kell megadni. A biztonságos sztring kulcsként használandó bájttömbté lesz konvertálva. A biztonságos kulcs érvényes hossza 8, 12 és 16 kódpont.
Paramétertulajdonságok
| Típus: | SecureString |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
Secure
| 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 |
-String
Megadja a karakterláncot, amelyet biztonságos karakterlánccá kell konvertálni.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| 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
String
Ehhez a parancsmaghoz egy szabványos titkosított sztringet is csövezhet.
Kimenetek
SecureString
Ez a parancsmag a létrehozott SecureString objektumot adja vissza.
Jegyzetek
Egyes karakterek, például hangulatjelek, több kódpontnak felelnek meg az őket tartalmazó sztringben. Kerülje ezeket a karaktereket, mert problémákat és félreértéseket okozhatnak jelszó használata esetén.