ConvertFrom-SecureString
Converteert een beveiligde tekenreeks naar een versleutelde standaardtekenreeks.
Syntaxis
ConvertFrom-SecureString
[-SecureString] <SecureString>
[[-SecureKey] <SecureString>]
[<CommonParameters>]
ConvertFrom-SecureString
[-SecureString] <SecureString>
[-AsPlainText]
[<CommonParameters>]
ConvertFrom-SecureString
[-SecureString] <SecureString>
[-Key <Byte[]>]
[<CommonParameters>]
Description
De ConvertFrom-SecureString
cmdlet converteert een beveiligde tekenreeks (System.Security.SecureString) naar een versleutelde standaardtekenreeks (System.String). In tegenstelling tot een beveiligde tekenreeks kan een versleutelde standaardtekenreeks worden opgeslagen in een bestand voor later gebruik. De versleutelde standaardtekenreeks kan worden geconverteerd naar de beveiligde tekenreeksindeling met behulp van de ConvertTo-SecureString
cmdlet.
Als een versleutelingssleutel wordt opgegeven met behulp van de parameters Sleutel of SecureKey , wordt het AES-versleutelingsalgoritmen (Advanced Encryption Standard) gebruikt. De opgegeven sleutel moet een lengte hebben van 128, 192 of 256 bits, omdat dit de sleutellengten zijn die worden ondersteund door het AES-versleutelingsalgoritmen. Als er geen sleutel is opgegeven, wordt de Windows Data Protection API (DPAPI) gebruikt om de standaardtekenreeksweergave te versleutelen.
Notitie
Houd er rekening mee dat de inhoud van een SecureString per DotNet niet is versleuteld op niet-Windows-systemen.
Voorbeelden
Voorbeeld 1: Een beveiligde tekenreeks maken
$SecureString = Read-Host -AsSecureString
Met deze opdracht maakt u een beveiligde tekenreeks op basis van tekens die u bij de opdrachtprompt typt. Nadat u de opdracht hebt ingevoerd, typt u de tekenreeks die u wilt opslaan als een beveiligde tekenreeks. Er wordt een sterretje (*
) weergegeven om elk teken weer te geven dat u typt.
Voorbeeld 2: Een beveiligde tekenreeks converteren naar een versleutelde standaardtekenreeks
$StandardString = ConvertFrom-SecureString $SecureString
Met deze opdracht wordt de beveiligde tekenreeks in de $SecureString
variabele geconverteerd naar een versleutelde standaardtekenreeks. De resulterende versleutelde standaardtekenreeks wordt opgeslagen in de $StandardString
variabele.
Voorbeeld 3: Een beveiligde tekenreeks converteren naar een versleutelde standaardtekenreeks met een 192-bits sleutel
$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
Deze opdrachten gebruiken het AES-algoritme (Advanced Encryption Standard) om de beveiligde tekenreeks die in de $SecureString
variabele is opgeslagen, te converteren naar een versleutelde standaardtekenreeks met een 192-bits sleutel. De resulterende versleutelde standaardtekenreeks wordt opgeslagen in de $StandardString
variabele.
Met de eerste opdracht wordt een sleutel opgeslagen in de $Key
variabele. De sleutel is een matrix van 24 decimale cijfers, die elk kleiner dan 256 moeten zijn om binnen één niet-ondertekende byte te passen.
Omdat elk decimaal getal één byte (8 bits) vertegenwoordigt, heeft de sleutel 24 cijfers voor een totaal van 192 bits (8 x 24). Dit is een geldige sleutellengte voor het AES-algoritme.
De tweede opdracht gebruikt de sleutel in de $Key
variabele om de beveiligde tekenreeks te converteren naar een versleutelde standaardtekenreeks.
Voorbeeld 4: Een beveiligde tekenreeks rechtstreeks converteren naar een tekenreeks zonder opmaak
$secureString = ConvertTo-SecureString -String 'Example' -AsPlainText
$secureString # 'System.Security.SecureString'
ConvertFrom-SecureString -SecureString $secureString -AsPlainText # 'Example'
Parameters
-AsPlainText
Als deze optie is ingesteld, ConvertFrom-SecureString
worden beveiligde tekenreeksen geconverteerd naar de ontsleutelde tekenreeks zonder opmaak als uitvoer.
Deze parameter is toegevoegd in PowerShell 7.0.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-Key
Hiermee geeft u de versleutelingssleutel op als een bytematrix.
Type: | Byte[] |
Position: | Named |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SecureKey
Hiermee geeft u de versleutelingssleutel op als een beveiligde tekenreeks. De waarde van de beveiligde tekenreeks wordt geconverteerd naar een bytematrix voordat deze als sleutel wordt gebruikt.
Type: | SecureString |
Position: | 1 |
Default value: | None |
Vereist: | False |
Pijplijninvoer accepteren: | False |
Jokertekens accepteren: | False |
-SecureString
Hiermee geeft u de beveiligde tekenreeks die moet worden geconverteerd naar een versleutelde standaardtekenreeks.
Type: | SecureString |
Position: | 0 |
Default value: | None |
Vereist: | True |
Pijplijninvoer accepteren: | True |
Jokertekens accepteren: | False |
Invoerwaarden
U kunt een SecureString-object doorsluisen naar deze cmdlet.
Uitvoerwaarden
Deze cmdlet retourneert de gemaakte tekenreeks voor tekst zonder opmaak.
Notities
- Als u een beveiligde tekenreeks wilt maken op basis van tekens die bij de opdrachtprompt zijn getypt, gebruikt u de parameter AsSecureString van de
Read-Host
cmdlet. - Wanneer u de sleutel- of SecureKey-parameters gebruikt om een sleutel op te geven, moet de sleutellengte juist zijn. Een sleutel van 128 bits kan bijvoorbeeld worden opgegeven als een bytematrix van 16 decimale cijfers. Op dezelfde manier komen 192-bits en 256-bits sleutels overeen met bytematrices van respectievelijk 24 en 32 decimale cijfers.
- Sommige tekens, zoals emoticons, komen overeen met verschillende codepunten in de tekenreeks die ze bevat. Vermijd het gebruik van deze tekens omdat ze problemen en misverstanden kunnen veroorzaken bij gebruik in een wachtwoord.