Aracılığıyla paylaş


Unprotect-CmsMessage

Şifreleme İletisi Söz Dizimi biçimi kullanılarak şifrelenen içeriğin şifresini çözer.

Syntax

Unprotect-CmsMessage
         [-EventLogRecord] <EventLogRecord>
         [[-To] <CmsMessageRecipient[]>]
         [-IncludeContext]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-Content] <string>
         [[-To] <CmsMessageRecipient[]>]
         [-IncludeContext]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-Path] <string>
         [[-To] <CmsMessageRecipient[]>]
         [-IncludeContext]
         [<CommonParameters>]
Unprotect-CmsMessage
         [-LiteralPath] <string>
         [[-To] <CmsMessageRecipient[]>]
         [-IncludeContext]
         [<CommonParameters>]

Description

Cmdlet, Unprotect-CmsMessage Şifreleme İletisi Söz Dizimi (CMS) biçimi kullanılarak şifrelenmiş içeriğin şifresini çözer.

CMS cmdlet'leri, RFC5652 tarafından belgelendiği gibi iletileri şifrelemek için IETF standart biçimini kullanarak içeriğin şifrelenmesini ve şifre çözmesini destekler.

CMS şifreleme standardı, içeriği şifrelemek için kullanılan anahtarların (ortak anahtar) ve içeriğin şifresini çözmek için kullanılan anahtarların (özel anahtar) ayrı olduğu ortak anahtar şifrelemesini kullanır. Ortak anahtarınız yaygın olarak paylaşılabilir ve hassas veriler değildir. Herhangi bir içerik bu ortak anahtarla şifrelenirse, yalnızca özel anahtarınız şifreyi çözebilir. Daha fazla bilgi için bkz . Ortak anahtar şifrelemesi.

Unprotect-CmsMessage CMS biçiminde şifrelenmiş içeriğin şifresini çözer. Cmdlet'ini çalıştırarak şifrelediğiniz içeriğin şifresini çözmek için bu cmdlet'i çalıştırabilirsiniz Protect-CmsMessage . Şifrelerini çözmek istediğiniz içeriği dize olarak, şifreleme olay günlüğü kayıt kimliği numarasına veya şifrelenmiş içeriğin yoluna göre belirtebilirsiniz. Unprotect-CmsMessage Cmdlet şifresi çözülmüş içeriği döndürür.

PowerShell 7.1'de Linux ve macOS desteği eklendi.

Örnekler

Örnek 1: İletinin şifresini çözme

Aşağıdaki örnekte, değişmez değer yolunda C:\Users\Test\Documents\PowerShellbulunan içeriğin şifresini çözersiniz. Gerekli To parametresinin değeri için bu örnek, şifrelemeyi gerçekleştirmek için kullanılan sertifikanın parmak izini kullanır. "Yeni Tümünü Kes komutunu deneyin" şifresi çözülen ileti sonuç olarak gelir.

$parameters = @{
  LiteralPath = "C:\Users\Test\Documents\PowerShell\Future_Plans.txt"
  To = '0f 8j b1 ab e0 ce 35 1d 67 d2 f2 6f a2 d2 00 cl 22 z9 m9 85'
}
Unprotect-CmsMessage -LiteralPath @parameters

Try the new Break All command

Örnek 2: Şifrelenmiş olay günlüğü iletisinin şifresini çözme

Aşağıdaki örnek, PowerShell olay günlüğünden şifrelenmiş bir olay alır ve kullanarak Unprotect-CmsMessageşifresini çözer.

$event = Get-WinEvent Microsoft-Windows-PowerShell/Operational -MaxEvents 1 |
    Where-Object Id -eq 4104
Unprotect-CmsMessage -EventLogRecord $event

Örnek 3: İşlem hattını kullanarak şifrelenmiş olay günlüğü iletilerinin şifresini çözme

Aşağıdaki örnek, PowerShell olay günlüğünden tüm şifrelenmiş olayları alır ve kullanarak Unprotect-CmsMessagebunların şifresini çözer.

Get-WinEvent Microsoft-Windows-PowerShell/Operational |
    Where-Object Id -eq 4104 |
    Unprotect-CmsMessage

Parametreler

-Content

Şifrelenmiş bir dizeyi veya şifrelenmiş dize içeren bir değişkeni belirtir.

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

-EventLogRecord

CMS şifreli iletisi içeren bir olay günlüğü kaydı belirtir.

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

-IncludeContext

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LiteralPath

Şifresini çözmek istediğiniz şifrelenmiş içeriğin yolunu belirtir. Yol'un aksine, LiteralPath değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol kaçış karakterleri içeriyorsa, tek tırnak içine alın. Tek tırnak işaretleri PowerShell'e hiçbir karakteri kaçış dizisi olarak yorumlamaması gerektiğini söyler.

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

-Path

Şifresini çözmek istediğiniz şifrelenmiş içeriğin yolunu belirtir.

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

-To

Aşağıdaki biçimlerden herhangi birinde tanımlanan bir veya daha fazla CMS ileti alıcısını belirtir:

  • Gerçek bir sertifika (sertifika sağlayıcısından alınan şekilde).
  • Sertifikayı içeren dosyanın yolu.
  • Sertifikayı içeren dizinin yolu.
  • Sertifikanın parmak izi (sertifika deposuna bakmak için kullanılır).
  • Sertifikanın konu adı (sertifika deposuna bakmak için kullanılır).
Type:CmsMessageRecipient[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Girişler

EventLogRecord

String

Şifrelenmiş içerik içeren bir nesneyi bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

String

Bu cmdlet şifrelenmemiş iletiyi döndürür.