在ClickOnce部署中使用证书对应用程序进行签名

8
对于我的基于Windows的应用程序,我希望使用ClickOnce作为部署技术。我的应用程序将通过互联网分发。
在文章ClickOnce和Authenticode中,我阅读到:
引用:

对于ClickOnce应用程序,您必须拥有一个有效的代码签名Authenticode证书。您可以通过以下三种方式之一获得代码签名证书:

  1. 从证书供应商购买证书。

  2. 从负责创建数字证书的组织中收到一个证书。

  3. 使用包含在Windows软件开发工具包(SDK)中的MakeCert.exe生成自己的证书。

在我的情况下,第二种方法不适用。
正如我在几行后读到的:
引用:

默认情况下,使用自签名的ClickOnce应用程序并通过互联网部署无法利用可信任的应用程序部署。

(重点是我的。)
我无法理解“by default”的含义。在我的情况下,选项#3是否可行?
为了了解所有可能性,#1意味着什么?(“从证书供应商购买一个”)我应该购买什么样的证书?哪个证书颁发机构可以推荐?根据我应该选择什么?证书的价格是多少?
2个回答

12

必须使用“Microsoft Authenticode证书”进行签名,这样我们才能签署各种Windows可执行文件和代码,包括.exe.cab.dll.ocx.xpi文件。

签署应用程序不是强制性的,但如果我们这样做,我们的用户将不会看到一个警告消息,指出软件作者未知。

Microsoft Authenticode证书需要由可信任的证书颁发机构颁发。不幸的是,价格相当昂贵。更多信息和一些示例请查看页面Microsoft Authenticode Certificates

更新我通过KSoftware购买了证书,它是Comodo的零售商。与其他选择相比,价格相当优惠:每年95美元。流程比我预期的要快:我早上申请,晚上证书就已经可以使用了。(对于那些感兴趣的人,我遵循了这个逐步指南。)


1

1
你是如何为代码签名证书生成CSR的? - Mathias Lykkegaard Lorenzen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接