Unprotect-CmsMessage
使用密碼編譯訊息語法格式解密已加密的內容。
語法
ByWinEvent (預設值)
Unprotect-CmsMessage
[-EventLogRecord] <PSObject>
[[-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
Unprotect-CmsMessage Cmdlet 會使用密碼編譯訊息語法 (CMS) 格式來解密已加密的內容。
CMS Cmdlet 支援使用 IETF 標準格式加密和解密內容,以密碼編譯方式保護訊息,如 RFC5652所記載。
CMS 加密標準會使用公鑰密碼編譯,其中用來加密內容的密鑰(公鑰)和用來解密內容的金鑰(私鑰)是分開的。 您的公鑰可以廣泛共用,而且不是敏感數據。 如果有任何內容使用此公鑰加密,則只有您的私鑰才能解密。 如需詳細資訊,請參閱 公鑰密碼編譯。
Unprotect-CmsMessage 解密以 CMS 格式加密的內容。 您可以執行此 Cmdlet,藉由執行 Protect-CmsMessage Cmdlet 來解密已加密的內容。 您可以藉由加密事件記錄識別碼或加密內容的路徑,指定您想要解密為字串的內容。 Unprotect-CmsMessage Cmdlet 會傳回解密的內容。
範例
範例 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 參數的值,此範例會使用用來執行加密的憑證指紋。 解密的訊息「試用新的全部中斷命令」是結果。
參數
-Content
指定加密字串,或包含加密字串的變數。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ByContent
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-EventLogRecord
指定代表 CMS 加密作業的事件記錄檔記錄識別碼。
參數屬性
| 類型: | PSObject |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ByWinEvent
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-IncludeContext
Unprotect-CmsMessage Cmdlet 會使用密碼編譯訊息語法 (CMS) 格式來解密已加密的內容。
CMS Cmdlet 支援使用 IETF 標準格式加密和解密內容,以密碼編譯方式保護訊息,如 RFC5652所記載。
CMS 加密標準會使用公鑰密碼編譯,其中用來加密內容的密鑰(公鑰)和用來解密內容的金鑰(私鑰)是分開的。 您的公鑰可以廣泛共用,而且不是敏感數據。 如果有任何內容使用此公鑰加密,則只有您的私鑰才能解密。 如需詳細資訊,請參閱 公鑰密碼編譯。
Unprotect-CmsMessage 解密以 CMS 格式加密的內容。 您可以執行此 Cmdlet,藉由執行 Protect-CmsMessage Cmdlet 來解密已加密的內容。 您可以藉由加密事件記錄識別碼或加密內容的路徑,指定您想要解密為字串的內容。 Unprotect-CmsMessage Cmdlet 會傳回解密的內容。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-LiteralPath
指定要解密之加密內容的路徑。 不同於 Path,LiteralPath 的值則完全按照輸入時的方式使用。 不會將任何字元解譯為通配符。 如果路徑包含逸出字元,請以單引弧括住它。 單引號會告知 Windows PowerShell 不要將任何字元解譯為逸出序列。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ByLiteralPath
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Path
指定要解密之加密內容的路徑。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ByPath
| Position: | 0 |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-To
指定以下列任何格式識別的一或多個CMS訊息收件者。
- 從證書提供者獲取的證書。
- 包含憑證之檔案的路徑。
- 包含憑證之目錄的路徑。
- 憑證的指紋(用來查看憑證庫)。
- 憑證的主題名稱(用於在憑證存儲區中查找)。
參數屬性
| 類型: | CmsMessageRecipient[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | 1 |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
System.Diagnostics.Eventing.Reader.EventLogRecord or System.String
您可以使用管線將包含加密內容的物件傳送至 Unprotect-CmsMessage。
輸出
String
未加密的訊息。