Command-Line-Interface

從 Windows 命令行導入 .cer 證書

  • November 6, 2013

厭倦了涉水穿過 MMC 叢林,我需要一種將給定.cer文件(僅包含一個公鑰)導入機器範圍證書儲存的方法(不知道它是如何用英文呼叫的,因為我使用的是本地化版本Windows)進入“個人證書”文件夾。兩個cmd.exe版本或 PowerShell 版本都可以。

Powershell 解決方案,使用System.Security.Cryptograpy.X509Certificates

$filename = "MyFileName.cer"

[Reflection.Assembly]::Load("System.Security, Version=2.0.0.0, Culture=Neutral, PublicKeyToken=b03f5f7f11d50a3a")

$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($filename)

$store = New-Object System.Security.Cryptography.X509Certificates.X509Store([System.Security.Cryptography.X509Certificates.StoreName]::My,[System.Security.Cryptography.X509Certificates.StoreLocation]::LocalMachine)

$store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite);

$store.Add($cert);

抱歉所有完整的命名空間規範,但 PowerShell 中沒有“使用”指令。

引用自:https://serverfault.com/questions/74302