Answers:
证书管理单元确实不喜欢导出PFX证书,但是PowerShell很高兴。您可以使用Export-PfxCertificate
cmdlet。
cd cert:\
在PowerShell提示符下键入,转到证书伪驱动器。cd CurrentUser
或cd LocalMachine
根据证书所在的位置而定。您可能需要以管理员身份启动PowerShell,以导出计算机证书。cd
放入适当的商店(dir
可能会有帮助)。MMC中的个人商店在My
这里称为。dir
标识与所需证书对应的ID。键入以下命令以使用密码将其导出为PFX:
Export-PfxCertificate -Cert .\LONGSTRINGOFHEX -FilePath 'C:\path\to\outfile.pfx' -Password (ConvertTo-SecureString -String 'password' -AsPlainText -Force)
LONGSTRINGOFHEX
应该替换为您的证书ID。幸运的是,您可以在其上使用制表符补全。
执行该命令后,您将获得一个由您提供的密码保护的PFX证书。PowerShell拒绝导出没有密码的证书的私钥,并且密码不能为空。但是,您的PFX已耗尽。
cd cert:\
改为。
如果将证书导入到WebHosting存储中,则不能导出私钥。将其移至个人商店,您将能够导出为PFX。我能够在Windows 2012R2中执行此操作,而无需转到命令行并使用Export-PfxCertificate(这很痛苦,因为我无法弄清楚证书的ID来挽救我的生命)。
cd cert:\LocalMachine\My
'dir'
cert:
PS时,我得到“术语'cert:'未被识别为cmdlet,函数,脚本文件或可操作程序的名称”。Windows 10当然。