次の方法で共有


Unprotect-CmsMessage

暗号化メッセージ構文形式を使用して暗号化されたコンテンツを復号化します。

構文

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

説明

Unprotect-CmsMessage コマンドレットは、暗号化メッセージ構文 (CMS) 形式を使用して暗号化されたコンテンツの暗号化を解除します。

CMS コマンドレットは、メッセージを暗号化で保護するための IETF 標準形式を使用したコンテンツの暗号化と暗号化解除をサポート RFC5652

CMS 暗号化標準では公開キー暗号化が使用されます。ここで、コンテンツの暗号化に使用されるキー (公開キー) と、コンテンツの暗号化解除に使用されるキー (秘密キー) は別々です。 公開キーは広く共有でき、機密データではありません。 この公開キーを使用してコンテンツが暗号化されている場合、秘密キーのみが暗号化を解除できます。 詳細については、「公開キー暗号化 」を参照してください。

Unprotect-CmsMessage は、CMS 形式で暗号化されたコンテンツを復号化します。 このコマンドレットを実行すると、Protect-CmsMessage コマンドレットを実行して、暗号化したコンテンツの暗号化を解除できます。 暗号化解除するコンテンツを文字列として、暗号化イベント ログ レコード ID 番号、または暗号化されたコンテンツへのパスで指定できます。 Unprotect-CmsMessage コマンドレットは、暗号化解除されたコンテンツを返します。

例 1: メッセージの暗号化を解除する

PS C:\> C:\Users\gabyk\Documents\PowerShell_ISEUnprotect-CmsMessage -LiteralPath "C:\Users\Test\Documents\PowerShell ISE\Future_Plans.txt" -To '0f 8j b1 ab e0 ce 35 1d 67 d2 f2 6f a2 d2 00 cl 22 z9 m9 85'
Try the new Break All command

次の例では、リテラル パス C:\Users\Test\Documents\PowerShell ISE にあるコンテンツの暗号化を解除します。 この例では、必須の To パラメーターの値に対して、暗号化の実行に使用された証明書の拇印を使用します。 復号化されたメッセージ「新しい Break All コマンドを試してください」が結果です。

パラメーター

-Content

暗号化された文字列、または暗号化された文字列を含む変数を指定します。

型:String
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-EventLogRecord

CMS 暗号化操作を表すイベント・ログ・レコード ID を指定します。

型:PSObject
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-IncludeContext

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-LiteralPath

暗号化を解除する暗号化されたコンテンツへのパスを指定します。 パスとは異なり、LiteralPath 値は、型指定されたとおりに使用されます。 ワイルドカード文字として解釈される文字はありません。 パスにエスケープ文字が含まれている場合は、単一引用符で囲みます。 単一引用符は、文字をエスケープ シーケンスとして解釈しないように Windows PowerShell に指示します。

型:String
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Path

暗号化を解除する暗号化されたコンテンツへのパスを指定します。

型:String
配置:0
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-To

次のいずれかの形式で識別される 1 つ以上の CMS メッセージ受信者を指定します。

  • (証明書プロバイダーから取得された) 実際の証明書。
  • 証明書を含むファイルへのパス。
  • 証明書を含むディレクトリへのパス。
  • 証明書の拇印 (証明書ストアの検索に使用されます)。
  • 証明書のサブジェクト名 (証明書ストアの検索に使用されます)。
型:CmsMessageRecipient[]
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

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

暗号化されたコンテンツを含むオブジェクトを Unprotect-CmsMessage にパイプできます。

出力

String

暗号化されていないメッセージ。