【问题标题】:How to translate a MakeCert command to New-SelfSignedCertificate command?如何将 MakeCert 命令转换为 New-SelfSignedCertificate 命令?
【发布时间】:2020-02-10 22:18:08
【问题描述】:

我正在关注 this tutorial 为我的软件实施许可解决方案。

教程有时会要求运行 makecert 命令:

makecert -pe -ss My -sr CurrentUser -$ commercial -n "CN=<YourCertName>" -sky Signature

但此时 makecert 已过时,我试图使其工作的所有解决方案在我的 Windows 10 和 Visual Studio 2017 上都失败了。不,开发人员命令提示符没有帮助。不,安装 Windows SDK 没有帮助。

唯一严肃的解决方案似乎是接受过时的 makecert 并使用 Powershell New-SelfSignedCertificate 命令。

我可以创建这个表:

但我不确定这是否正确。你能帮我把这个 MakeCert 命令翻译成 New-SelfSignedCertificate 命令吗?

这是正确的吗?

New-SelfSignedCertificate -KeyExportPolicy Exportable -CertStoreLocation "Cert:\CurrentUser\My" -Type Custom -Subject "CN=<YourCertName>" -KeySpec Signature

【问题讨论】:

  • 如果您能帮助我,我还有一个关于此的快速问题。主题是什么?我可以用我选择的任何值填写 吗?还是应该定义一些东西?
  • 我正在尝试广告的答案(从未“接受”),虽然我可以在 Powershell 中运行 OK 命令,但我没有证书管理中列出的证书。请告知您是如何处理此问题的。

标签: powershell certificate makecert self-signed-certificate


【解决方案1】:

你的命令对我来说看起来不错,但我相信你会想要使用 CodeSigningCert 而不是 Custom 类型。我确实想指出,您不必在主题参数中指定CN=,因为它是自动的。

要回答您的第二个问题,主题应该是受证书保护的任何内容的名称。通常是访问资源的方式(例如服务器名称)。对于代码签名证书,通常会使用您的组织名称或某些变体。

【讨论】:

  • 感谢您的回答。请参阅我对问题的评论。
猜你喜欢
  • 2018-04-02
  • 2021-10-08
  • 1970-01-01
  • 2021-07-25
  • 2011-03-07
  • 1970-01-01
  • 1970-01-01
  • 2017-10-19
  • 2017-05-14
相关资源
最近更新 更多