Dela via


Unprotect-CmsMessage

Dekrypterar innehåll som har krypterats med hjälp av det kryptografiska meddelandesyntaxformatet.

Syntax

Unprotect-CmsMessage
         [-EventLogRecord] <PSObject>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-Content] <String>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-Path] <String>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-LiteralPath] <String>
         [-IncludeContext]
         [[-To] <CmsMessageRecipient[]>]
         [<CommonParameters>]

Description

Cmdleten Unprotect-CmsMessage dekrypterar innehåll som har krypterats med hjälp av CMS-formatet (Cryptographic Message Syntax).

CMS-cmdletarna stöder kryptering och dekryptering av innehåll med IETF-standardformatet för kryptografiskt skydd av meddelanden, vilket dokumenteras av RFC5652.

CMS-krypteringsstandarden använder kryptering med offentliga nycklar, där de nycklar som används för att kryptera innehåll (den offentliga nyckeln) och de nycklar som används för att dekryptera innehåll (den privata nyckeln) är separata. Din offentliga nyckel kan delas brett och är inte känsliga data. Om innehåll krypteras med den här offentliga nyckeln kan bara din privata nyckel dekryptera det. Mer information finns i Kryptografi med offentlig nyckel.

Unprotect-CmsMessage dekrypterar innehåll som har krypterats i CMS-format. Du kan köra den här cmdleten för att dekryptera innehåll som du har krypterat genom att köra cmdleten Protect-CmsMessage . Du kan ange innehåll som du vill dekryptera som en sträng, med post-ID-numret för krypteringshändelseloggen eller genom sökväg till det krypterade innehållet. Cmdleten Unprotect-CmsMessage returnerar det dekrypterade innehållet.

Stöd för Linux och macOS har lagts till i PowerShell 7.1.

Exempel

Exempel 1: Dekryptera ett meddelande

I följande exempel dekrypterar du innehåll som finns på den literala sökvägen C:\Users\Test\Documents\PowerShell. För värdet för den obligatoriska Till-parametern använder det här exemplet tumavtrycket för certifikatet som användes för att utföra krypteringen. Det dekrypterade meddelandet "Prova det nya kommandot Bryt alla" är resultatet.

$parameters = @{
  LiteralPath = "C:\Users\Test\Documents\PowerShell\Future_Plans.txt"
  To = '0f 8j b1 ab e0 ce 35 1d 67 d2 f2 6f a2 d2 00 cl 22 z9 m9 85'
}
Unprotect-CmsMessage -LiteralPath @parameters

Try the new Break All command

Parametrar

-Content

Anger en krypterad sträng eller en variabel som innehåller en krypterad sträng.

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

-EventLogRecord

Anger ett post-ID för händelseloggen som representerar en CMS-krypteringsåtgärd.

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

-IncludeContext

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

-LiteralPath

Anger sökvägen till krypterat innehåll som du vill dekryptera. Till skillnad från Path används värdet för LiteralPath exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den med enkla citattecken. Enkla citattecken talar om för PowerShell att inga tecken ska tolkas som escape-sekvenser.

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

-Path

Anger sökvägen till krypterat innehåll som du vill dekryptera.

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

-To

Anger en eller flera CMS-meddelandemottagare som identifieras i något av följande format:

  • Ett faktiskt certifikat (som hämtats från certifikatprovidern).
  • Sökväg till en fil som innehåller certifikatet.
  • Sökväg till en katalog som innehåller certifikatet.
  • Tumavtryck för certifikatet (används för att titta i certifikatarkivet).
  • Certifikatets ämnesnamn (används för att titta i certifikatarkivet).
Type:CmsMessageRecipient[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Indata

System.Diagnostics.Eventing.Reader.EventLogRecord or System.String

Du kan skicka ett objekt som innehåller krypterat innehåll till Unprotect-CmsMessage.

Utdata

String

Det okrypterade meddelandet.