Delen via


Unprotect-CmsMessage

Ontsleutelt inhoud die is versleuteld met behulp van de indeling Cryptografische berichtsyntaxis.

Syntaxis

ByWinEvent (Standaard)

Unprotect-CmsMessage
    [-EventLogRecord] <EventLogRecord>
    [[-To] <CmsMessageRecipient[]>]
    [-IncludeContext]
    [<CommonParameters>]

ByContent

Unprotect-CmsMessage
    [-Content] <string>
    [[-To] <CmsMessageRecipient[]>]
    [-IncludeContext]
    [<CommonParameters>]

ByPath

Unprotect-CmsMessage
    [-Path] <string>
    [[-To] <CmsMessageRecipient[]>]
    [-IncludeContext]
    [<CommonParameters>]

ByLiteralPath

Unprotect-CmsMessage
    [-LiteralPath] <string>
    [[-To] <CmsMessageRecipient[]>]
    [-IncludeContext]
    [<CommonParameters>]

Description

De Unprotect-CmsMessage cmdlet ontsleutelt inhoud die is versleuteld met behulp van de CMS-indeling (Cryptographic Message Syntax).

De CMS-cmdlets ondersteunen versleuteling en ontsleuteling van inhoud met behulp van de IETF-standaardindeling voor het cryptografisch beveiligen van berichten, zoals beschreven door RFC5652.

De CMS-versleutelingsstandaard maakt gebruik van cryptografie van openbare sleutels, waarbij de sleutels die worden gebruikt voor het versleutelen van inhoud (de openbare sleutel) en de sleutels die worden gebruikt om inhoud (de persoonlijke sleutel) te ontsleutelen, gescheiden zijn. Uw openbare sleutel kan op grote schaal worden gedeeld en zijn geen gevoelige gegevens. Als inhoud met deze openbare sleutel is versleuteld, kan alleen uw persoonlijke sleutel deze ontsleutelen. Zie openbare-sleutelcryptografievoor meer informatie.

Unprotect-CmsMessage ontsleutelt inhoud die is versleuteld in CMS-indeling. U kunt deze cmdlet uitvoeren om inhoud te ontsleutelen die u hebt versleuteld door de Protect-CmsMessage cmdlet uit te voeren. U kunt inhoud opgeven die u wilt ontsleutelen als een tekenreeks, op basis van het id-nummer van de versleutelingslogboekrecord of op pad naar de versleutelde inhoud. De Unprotect-CmsMessage cmdlet retourneert de ontsleutelde inhoud.

Ondersteuning voor Linux en macOS is toegevoegd in PowerShell 7.1.

Voorbeelden

Voorbeeld 1: Een bericht ontsleutelen

In het volgende voorbeeld ontsleutelt u inhoud die zich in het letterlijke pad bevindt C:\Users\Test\Documents\PowerShell. Voor de waarde van de vereiste Voor parameter gebruikt dit voorbeeld de vingerafdruk van het certificaat dat is gebruikt om de versleuteling uit te voeren. Het ontsleutelde bericht 'Probeer de nieuwe opdracht Alles verbreken' is het resultaat.

$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

Voorbeeld 2: Een versleuteld gebeurtenislogboekbericht ontsleutelen

In het volgende voorbeeld wordt een versleutelde gebeurtenis opgehaald uit het PowerShell-gebeurtenislogboek en ontsleutelt deze met behulp van Unprotect-CmsMessage.

$event = Get-WinEvent Microsoft-Windows-PowerShell/Operational -MaxEvents 1 |
    Where-Object Id -EQ 4104
Unprotect-CmsMessage -EventLogRecord $event

Voorbeeld 3: Versleutelde gebeurtenislogboekberichten ontsleutelen met behulp van de pijplijn

In het volgende voorbeeld worden alle versleutelde gebeurtenissen uit het PowerShell-gebeurtenislogboek opgehaald en ontsleutelt ze met behulp van Unprotect-CmsMessage.

Get-WinEvent Microsoft-Windows-PowerShell/Operational |
    Where-Object Id -EQ 4104 |
    Unprotect-CmsMessage

Parameters

-Content

Hiermee geeft u een versleutelde tekenreeks of een variabele met een versleutelde tekenreeks op.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ByContent
Position:0
Verplicht:True
Waarde uit pijplijn:True
Waarde uit pijplijn op eigenschapsnaam:True
Waarde van resterende argumenten:False

-EventLogRecord

Hiermee geeft u een gebeurtenislogboekrecord op die een versleuteld CMS-bericht bevat.

Parametereigenschappen

Type:PSObject
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ByWinEvent
Position:0
Verplicht:True
Waarde uit pijplijn:True
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-IncludeContext

Bepaalt of de ontsleutelde inhoud in de oorspronkelijke context moet worden opgenomen in plaats van alleen de ontsleutelde inhoud uit te voeren.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-LiteralPath

Hiermee geeft u het pad naar versleutelde inhoud die u wilt ontsleutelen. In tegenstelling tot Pad, wordt de waarde van LiteralPath- exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escape-tekens bevat, zet het dan tussen enkele aanhalingstekens. Enkele aanhalingstekens zorgen ervoor dat PowerShell geen tekens als escapesequenties interpreteert.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ByLiteralPath
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Path

Hiermee geeft u het pad naar versleutelde inhoud die u wilt ontsleutelen.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

ByPath
Position:0
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-To

Hiermee geeft u een of meer CMS-berichtontvangers op, geïdentificeerd in een van de volgende indelingen:

  • Een werkelijk certificaat (zoals opgehaald van de certificaatprovider).
  • Pad naar het bestand met het certificaat.
  • Pad naar een map met het certificaat.
  • Vingerafdruk van het certificaat (gebruikt om in het certificaatarchief te zoeken).
  • Onderwerpnaam van het certificaat (wordt gebruikt om in het certificaatarchief te zoeken).

Parametereigenschappen

Type:

CmsMessageRecipient[]

Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:1
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

CommonParameters

Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.

Invoerwaarden

EventLogRecord

String

U kunt een object met versleutelde inhoud doorsluisen naar deze cmdlet.

Uitvoerwaarden

String

Met deze cmdlet wordt het niet-versleutelde bericht geretourneerd.