如何将MMC的证书导出为PFX文件?


19

我正在按照本指南尝试从Comodo更改代码签名证书的KeySpec属性。该指南提到将证书文件导入MMC,然后稍后再次导出。但是,我似乎没有选择导出为PFX文件的选项。我已经有一个PFX文件;我可以成功导入它,但是当我要导出时,该选项显示为灰色/已禁用。

禁用pfx

我需要做什么才能启用此导出选项?

Answers:


29

证书管理单元确实不喜欢导出PFX证书,但是PowerShell很高兴。您可以使用Export-PfxCertificatecmdlet。

  1. 通过cd cert:\在PowerShell提示符下键入,转到证书伪驱动器。
  2. 键入cd CurrentUsercd LocalMachine根据证书所在的位置而定。您可能需要以管理员身份启动PowerShell,以导出计算机证书。
  3. cd放入适当的商店(dir可能会有帮助)。MMC中的个人商店在My这里称为。
  4. 用于dir标识与所需证书对应的ID。
  5. 键入以下命令以使用密码将其导出为PFX:

    Export-PfxCertificate -Cert .\LONGSTRINGOFHEX -FilePath 'C:\path\to\outfile.pfx' -Password (ConvertTo-SecureString -String 'password' -AsPlainText -Force)
    

    LONGSTRINGOFHEX应该替换为您的证书ID。幸运的是,您可以在其上使用制表符补全。

执行该命令后,您将获得一个由您提供的密码保护的PFX证书。PowerShell拒绝导出没有密码的证书的私钥,并且密码不能为空。但是,您的PFX已耗尽。


请原谅这样一个无知的问题,但是我该如何安装cmdlet?当前,当我输入cert:PS时,我得到“术语'cert:'未被识别为cmdlet,函数,脚本文件或可操作程序的名称”。Windows 10当然。
soapergem '16

@SoaperGEM对不起,应该cd cert:\改为。
本N

1
@SoaperGEM该cmdlet在Windows 8、8.1、10,Server 2012和Server 2012 R2中可用。从屏幕截图来看,您已经设置好了。另外,在导入证书时,请寻找一个复选框,该复选框可将私钥标记为可导出。那应该使您能够通过MMC导出它。

2
我收到错误消息-无法导出不可导出的私钥。任何人都可以帮助确定问题。
Raja Dorji

1
@RajaDorji如果私钥被标记为不可导出,则系统通常拒绝导出。Mimikatz之类的工具(在此处提到)可以通过非官方的方法来解决。
本N

0

如果将证书导入到WebHosting存储中,则不能导出私钥。将其移至个人商店,您将能够导出为PFX。我能够在Windows 2012R2中执行此操作,而无需转到命令行并使用Export-PfxCertificate(这很痛苦,因为我无法弄清楚证书的ID来挽救我的生命)。


好吧,我错了。真幸运。我不得不再次尝试执行此任务(重新发行了证书),该方法不再起作用了:(
MC9000,19年

您可以通过以下方式找到证书的ID:转到IIS>计算机>服务器证书或通过cd cert:\LocalMachine\My'dir'
Devin Gleason Lambert

-1

一次导出.P7B文件。然后返回并尝试再次导出证书。下次启用.PFX导出。


那当然是行不通的!
MC9000
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.