Get-CmsMessage

Obtient le contenu qui a été chiffré à l’aide du format de syntaxe de message de chiffrement.

Syntax

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

Description

L’applet Get-CmsMessage de commande obtient du contenu qui a été chiffré à l’aide du format CMS (Cryptographic Message Syntax).

Les applets de commande CMS prennent en charge le chiffrement et le déchiffrement du contenu à l’aide du format IETF pour protéger les messages par chiffrement, comme documenté par RFC5652.

La norme de chiffrement CMS utilise le chiffrement à clé publique, où les clés utilisées pour chiffrer le contenu (la clé publique) et les clés utilisées pour déchiffrer le contenu (la clé privée) sont distinctes. Votre clé publique peut être partagée à grande échelle et ne constitue pas des données sensibles. Si du contenu est chiffré avec cette clé publique, seule votre clé privée peut le déchiffrer. Pour plus d’informations, consultez Cryptographie asymétrique.

Get-CmsMessage obtient le contenu qui a été chiffré au format CMS. Il ne déchiffre pas ni ne supprime la protection du contenu. Vous pouvez exécuter cette applet de commande pour obtenir du contenu chiffré en exécutant l’applet de Protect-CmsMessage commande. Vous pouvez spécifier le contenu que vous souhaitez déchiffrer en tant que chaîne ou par chemin d’accès au contenu chiffré. Vous pouvez diriger les résultats pour Get-CmsMessageUnprotect-CmsMessage déchiffrer le contenu, à condition que vous disposiez d’informations sur le certificat de chiffrement de document utilisé pour chiffrer le contenu.

La prise en charge de Linux et macOS a été ajoutée dans PowerShell 7.1.

Exemples

Exemple 1 : Obtenir du contenu chiffré

$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-----

Cette commande obtient du contenu chiffré situé à l’emplacement C :\Users\Test\Documents\PowerShell\Future_Plans.txt.

Exemple 2 : Diriger le contenu chiffré vers 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

Cette commande canalise les résultats de l’applet de commande de l’exemple Get-CmsMessage 1 vers Unprotect-CmsMessage, pour déchiffrer le message et le lire en texte brut. Dans ce cas, la valeur du paramètre To est la valeur de la ligne Objet du certificat de chiffrement. Le message déchiffré , « Essayer la nouvelle commande Arrêter tout », est le résultat.

Paramètres

-Content

Spécifie une chaîne chiffrée ou une variable contenant une chaîne chiffrée.

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

-LiteralPath

Spécifie le chemin d’accès au contenu chiffré que vous souhaitez obtenir. Contrairement à Path, la valeur de LiteralPath est utilisée exactement comme elle est typée. Aucun caractère n'est interprété en tant que caractère générique. Si le chemin inclut des caractères d’échappement, placez chacun d’eux entre guillemets simples. Les guillemets simples indiquent à PowerShell de ne pas interpréter les caractères entourés comme des caractères d’échappement.

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

-Path

Spécifie le chemin d’accès au contenu chiffré que vous souhaitez déchiffrer.

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