Sdílet prostřednictvím


ConvertFrom-SecureString

Převede zabezpečený řetězec na šifrovaný standardní řetězec.

Syntaxe

Secure (Výchozí)

ConvertFrom-SecureString
    [-SecureString] <SecureString>
    [[-SecureKey] <SecureString>]
    [<CommonParameters>]

AsPlainText

ConvertFrom-SecureString
    [-SecureString] <SecureString>
    [-AsPlainText]
    [<CommonParameters>]

Open

ConvertFrom-SecureString
    [-SecureString] <SecureString>
    [-Key <Byte[]>]
    [<CommonParameters>]

Description

Rutina ConvertFrom-SecureString převede zabezpečený řetězec (System.Security.SecureString) na šifrovaný standardní řetězec (System.String). Na rozdíl od zabezpečeného řetězce lze šifrovaný standardní řetězec uložit do souboru pro pozdější použití. Šifrovaný standardní řetězec lze převést zpět do zabezpečeného formátu řetězce pomocí rutiny ConvertTo-SecureString.

Pokud je šifrovací klíč zadán pomocí Klíče nebo SecureKey parametry, použije se šifrovací algoritmus AES (Advanced Encryption Standard). Zadaný klíč musí mít délku 128, 192 nebo 256 bitů, protože to jsou délky klíčů podporované šifrovacím algoritmem AES. Pokud není zadaný žádný klíč, použije se rozhraní Windows Data Protection API (DPAPI) k šifrování standardní řetězcové reprezentace.

Poznámka:

Další informace o ochraně dat SecureString najdete v tématu Jak zabezpečený je SecureString?.

Příklady

Příklad 1: Vytvoření zabezpečeného řetězce

$SecureString = Read-Host -AsSecureString

Tento příkaz vytvoří zabezpečený řetězec ze znaků, které zadáte na příkazovém řádku. Po zadání příkazu zadejte řetězec, který chcete uložit jako zabezpečený řetězec. Zobrazí se hvězdička (*), která bude představovat každý znak, který zadáte.

Příklad 2: Převod zabezpečeného řetězce na šifrovaný standardní řetězec

$StandardString = ConvertFrom-SecureString $SecureString

Tento příkaz převede zabezpečený řetězec v proměnné $SecureString na šifrovaný standardní řetězec. Výsledný šifrovaný standardní řetězec je uložen v proměnné $StandardString.

Příklad 3: Převod zabezpečeného řetězce na šifrovaný standardní řetězec s 192bitovým klíčem

$Key = (3,4,2,3,56,34,254,222,1,1,2,23,42,54,33,233,1,34,2,7,6,5,35,43)
$StandardString = ConvertFrom-SecureString $SecureString -Key $Key

Tyto příkazy používají algoritmus AES (Advanced Encryption Standard) k převodu zabezpečeného řetězce uloženého v proměnné $SecureString na šifrovaný standardní řetězec s 192bitovým klíčem. Výsledný šifrovaný standardní řetězec je uložen v proměnné $StandardString.

První příkaz uloží klíč do proměnné $Key. Klíč je pole 24 desetinných čísel, z nichž každé musí být menší než 256, aby se vešlo do jednoho nepodepsaného bajtu.

Vzhledem k tomu, že každé desetinné číslo představuje jeden bajt (8 bitů), má klíč 24 číslic pro celkem 192 bitů (8 x 24). Toto je platná délka klíče pro algoritmuS AES.

Druhý příkaz používá klíč v proměnné $Key k převodu zabezpečeného řetězce na šifrovaný standardní řetězec.

Příklad 4: Převedení zabezpečeného řetězce přímo na řetězec prostého textu

$secureString = ConvertTo-SecureString -String 'Example' -AsPlainText
$secureString # 'System.Security.SecureString'
ConvertFrom-SecureString -SecureString $secureString -AsPlainText # 'Example'

Parametry

-AsPlainText

Při nastavení ConvertFrom-SecureString převede zabezpečené textové řetězce na dešifrovaný prostý text.

Tento parametr byl přidán v PowerShellu 7.0.

Vlastnosti parametru

Typ:SwitchParameter
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

AsPlainText
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Key

Určuje šifrovací klíč jako pole bajtů.

Vlastnosti parametru

Typ:

Byte[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

Open
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-SecureKey

Určuje šifrovací klíč jako zabezpečený řetězec. Hodnota zabezpečeného řetězce se před použitím jako klíč převede na pole bajtů.

Vlastnosti parametru

Typ:SecureString
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

Secure
Position:1
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-SecureString

Určuje zabezpečený řetězec, který se má převést na šifrovaný standardní řetězec.

Vlastnosti parametru

Typ:SecureString
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:0
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

SecureString

Do tohoto cmdletu můžete přesměrovat objekt SecureString.

Výstupy

String

Tato rutina vrátí vytvořený řetězec prostého textu.

Poznámky

  • Pokud chcete vytvořit zabezpečený řetězec z znaků zadaných na příkazovém řádku, použijte parametr AsSecureString rutiny Read-Host.
  • Pokud k zadání klíče použijete parametry Key nebo SecureKey, musí být délka klíče správná. Například klíč 128 bitů lze zadat jako bajtovou matici s 16 desetinnými číslicemi. Podobně 192bitové a 256bitové klíče odpovídají bajtovým polím 24 a 32 desetinných číslic v uvedeném pořadí.
  • Některé znaky, například emotikon, odpovídají několika bodům kódu v řetězci, který je obsahuje. Nepoužívejte tyto znaky, protože můžou způsobovat problémy a nedorozumění při použití v hesle.