我有证书来签署我的 InstallShield 设置。今年我们更新证书时,现在依赖于中间证书“thawte code signing ca - g2”。
我们担心我们的许多客户可能没有安装这个中间根证书(实际上我们自己的构建服务器没有安装它,因此在更新证书后构建开始失败),因此他们会收到“未经验证的发布者”错误。
分发该中间证书的最佳做法是什么?有什么方法可以更改认证路径,使其仅依赖于更常见的“解冻代码签名 ca”?
我将不胜感激任何帮助。
谢谢,桑杰
我有证书来签署我的 InstallShield 设置。今年我们更新证书时,现在依赖于中间证书“thawte code signing ca - g2”。
我们担心我们的许多客户可能没有安装这个中间根证书(实际上我们自己的构建服务器没有安装它,因此在更新证书后构建开始失败),因此他们会收到“未经验证的发布者”错误。
分发该中间证书的最佳做法是什么?有什么方法可以更改认证路径,使其仅依赖于更常见的“解冻代码签名 ca”?
我将不胜感激任何帮助。
谢谢,桑杰
我终于弄清楚了这个问题。事实证明,当您导出 pfx 文件时,可以选择在 pfx 文件中包含证书根。以下是我在安装了从 thawte 获得的证书的 Windows 机器上执行的操作。1. 从开始->运行->certmgr.msc 打开证书存储 2. 导出证书。3. 确保选择包含私钥。4. 然后您可以选择包含根证书 - 默认情况下未选中。核实。
Micrsoft 有一个受信任的根程序,当前包含以下成员:
对于分发给公众的应用程序,最佳实践是获取由这些根之一备份的代码签名证书。对于内部企业应用程序(IT、DoD ectera),您可以使用其他应用程序,前提是您有一种方法可以代替分发证书的根。InstallShield 目前无法直接执行此操作,但可以使用调用 CAPI / CAPICOM / .NET X509 类的自定义操作。
顺便说一句,当您查看证书详细信息时,请一直查看第一个条目以了解根是谁。例如,我的证书说 COMODO Code Signing 2,但在上面说的是 USERTrust。当我查看 USERTrust 证书时显示“UTN-UserFirst-Object”。然后可以在上面链接的 Microsoft 网页上找到该名称。