Condividi tramite


Get-CmsMessage

Ottiene il contenuto crittografato utilizzando il formato Sintassi del messaggio crittografico.

Sintassi

ByContent

Get-CmsMessage
    [-Content] <String>
    [<CommonParameters>]

ByPath

Get-CmsMessage
    [-Path] <String>
    [<CommonParameters>]

ByLiteralPath

Get-CmsMessage
    [-LiteralPath] <String>
    [<CommonParameters>]

Descrizione

Il cmdlet Get-CmsMessage ottiene il contenuto crittografato usando il formato CMS (Cryptographic Message Syntax).

I cmdlet CMS supportano la crittografia e la decrittografia del contenuto usando il formato IETF per la protezione crittografica dei messaggi, come documentato da RFC5652.

Lo standard di crittografia CMS usa la crittografia a chiave pubblica, in cui le chiavi usate per crittografare il contenuto (la chiave pubblica) e le chiavi usate per decrittografare il contenuto (la chiave privata) sono separate. La chiave pubblica può essere condivisa ampiamente e non è dati sensibili. Se un contenuto è crittografato con questa chiave pubblica, solo la chiave privata può decrittografarla. Per altre informazioni, vedere crittografia a chiave pubblica.

Get-CmsMessage ottiene il contenuto crittografato in formato CMS. Non decrittografa o annulla la protezione del contenuto. È possibile eseguire questo cmdlet per ottenere il contenuto crittografato eseguendo il cmdlet Protect-CmsMessage. È possibile specificare il contenuto che si desidera decrittografare come stringa o in base al percorso del contenuto crittografato. È possibile inviare tramite pipe i risultati di Get-CmsMessage a Unprotect-CmsMessage per decrittografare il contenuto, purché siano disponibili informazioni sul certificato di crittografia dei documenti usato per crittografare il contenuto.

Esempio

Esempio 1: Ottenere contenuto crittografato

$Msg = Get-CmsMessage -Path "C:\Users\Test\Documents\PowerShell\Future_Plans.txt"
$Msg.Content
-----BEGIN CMS-----
MIIBqAYJKoZIhvcNAQcDoIIBmTCCAZUCAQAxggFQMIIBTAIBADA0MCAxHjAcBgNVBAMBFWxlZWhv
bG1AbGljcm9zb2Z0LmNvbQIQQYHsbcXnjIJCtH+OhGmc1DANBgkqhkiG9w0BAQcwAASCAQAnkFHM
proJnFy4geFGfyNmxH3yeoPvwEYzdnsoVqqDPAd8D3wao77z7OhJEXwz9GeFLnxD6djKV/tF4PxR
E27aduKSLbnxfpf/sepZ4fUkuGibnwWFrxGE3B1G26MCenHWjYQiqv+Nq32Gc97qEAERrhLv6S4R
G+2dJEnesW8A+z9QPo+DwYP5FzD0Td0ExrkswVckpLNR6j17Yaags3ltNXmbdEXekhi6Psf2MLMP
TSO79lv2L0KeXFGuPOrdzPRwCkV0vNEqTEBeDnZGrjv/5766bM3GW34FXApod9u+VSFpBnqVOCBA
DVDraA6k+xwBt66cV84AHLkh0kT02SIHMDwGCSqGSIb3DQEHATAdBglghkgBZQMEASoEEJbJaiRl
KMnBoD1dkb/FzSWAEBaL8xkFwCu0e1AtDj7nSJc=
-----END CMS-----

Questo comando ottiene contenuto crittografato che si trova in C:\Users\Test\Documents\PowerShell\Future_Plans.txt.

Esempio 2: Inviare tramite pipe contenuto crittografato a Unprotect-CmsMessage

$Msg = Get-CmsMessage -Path "C:\Users\Test\Documents\PowerShell\Future_Plans.txt"
$Msg | Unprotect-CmsMessage -To "cn=youralias@emailaddress.com"
Try the new Break All command

Questo comando invia tramite pipe i risultati del cmdlet Get-CmsMessage dall'esempio 1 a Unprotect-CmsMessageper decrittografare il messaggio e leggerlo in testo normale. In questo caso, il valore del parametro To è il valore della riga Oggetto del certificato di crittografia. Il messaggio decrittografato "Prova il nuovo comando Interrompi tutto" è il risultato.

Parametri

-Content

Specifica una stringa crittografata o una variabile contenente una stringa crittografata.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByContent
Posizione:0
Obbligatorio:True
Valore dalla pipeline:True
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-LiteralPath

Specifica il percorso del contenuto crittografato che si desidera ottenere. A differenza di Path, il valore di LiteralPath viene usato esattamente come viene tipizzato. Nessun carattere è interpretato come un carattere jolly. Se il percorso include caratteri di escape, racchiuderne ognuno tra virgolette singole. Le virgolette singole indicano a PowerShell di non interpretare i caratteri racchiusi come caratteri di escape.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByLiteralPath
Posizione:1
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Path

Specifica il percorso del contenuto crittografato da decrittografare.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ByPath
Posizione:1
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.