Megosztás a következőn keresztül:


ConvertTo-SecureString

Egyszerű vagy titkosított sztringeket alakít át biztonságos sztringekké.

Syntax

ConvertTo-SecureString
              [-String] <String>
              [[-SecureKey] <SecureString>]
              [<CommonParameters>]
ConvertTo-SecureString
              [-String] <String>
              [-AsPlainText]
              [-Force]
              [<CommonParameters>]
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. Az és Read-Hosta ConvertFrom-SecureString . A parancsmag által létrehozott biztonságos sztring olyan parancsmagokkal vagy függvényekkel használható, amelyek SecureString típusú paramétert igényelnek. A biztonságos sztring a parancsmaggal ConvertFrom-SecureString visszakonfigurálható titkosított, standard sztringgé. Ez lehetővé teszi, hogy később egy fájlban tárolja.

Ha a konvertált standard sztringet egy megadott kulccsal titkosították ConvertFrom-SecureString , ugyanazt a kulcsot kell megadni, mint a parancsmag Kulcs vagy SecureKey paraméterének ConvertTo-SecureString értékét.

Feljegyzés

Vegye figyelembe, hogy DotNetenként a SecureString tartalma nem titkosítva van a nem Windows rendszerű rendszereken.

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 AsSecureString paraméterét Read-Host 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 változóba $Secure kerülnek.

A második parancs megjeleníti a változó tartalmát $Secure . Mivel a $Secure változó egy biztonságos sztringet tartalmaz, a PowerShell csak a System.Security.SecureString típust jeleníti meg.

A harmadik parancs a ConvertFrom-SecureString parancsmaggal konvertálja a változóban lévő $Secure biztonságos sztringet titkosított standard sztringgé. Menti az eredményt a $Encrypted változóban.

A negyedik parancs megjeleníti a titkosított sztringet a $Encrypted változó értékében.

Az ötödik parancs a ConvertTo-SecureString parancsmaggal konvertálja a változóban lévő $Encrypted titkosított standard sztringet biztonságos sztringgé. Menti az eredményt a $Secure2 változóban. A hatodik parancs megjeleníti a változó értékét $Secure2 . 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 AsSecureString paraméterét Read-Host 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 változóba $Secure kerülnek.

A második parancs a ConvertFrom-SecureString parancsmaggal konvertálja a változóban lévő $Secure biztonságos sztringet titkosított standard sztringgé a megadott kulccsal. A rendszer menti a tartalmat a $Encrypted változóba.

A harmadik parancs egy folyamatkezelővel (|) küldi el a $Encrypted változó értékét a Set-Content parancsmagnak, amely menti az értéket a Encrypted.txt fájlban.

A negyedik parancs a parancsmagot használja a Get-Content 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ények a változóban $Secure2 lesznek mentve.

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 kezdődően az AsPlainText paraméter használatakor nincs szükség a Force paraméterre. 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

Figyelemfelhívá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 sztringparancsmagok 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.

Type:SwitchParameter
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

A PowerShell 7-től kezdődően 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.

Type:SwitchParameter
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:Byte[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SecureString
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-String

Megadja a biztonságos sztringgé konvertálandó sztringet.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

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.