Get-CmsMessage
Ottiene il contenuto crittografato utilizzando il formato Sintassi del messaggio crittografico.
Sintassi
Get-CmsMessage
[-Content] <String>
[<CommonParameters>]
Get-CmsMessage
[-Path] <String>
[<CommonParameters>]
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.
Il supporto per Linux e macOS è stato aggiunto in PowerShell 7.1.
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-CmsMessage
per 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.
Tipo: | String |
Posizione: | 0 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | 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 viene interpretato come caratteri 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.
Tipo: | String |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Path
Specifica il percorso del contenuto crittografato da decrittografare.
Tipo: | String |
Posizione: | 1 |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |