如何签署一个.NET Framework ClickOnce应用程序

26
我有一个为客户构建的ClickOnce应用程序,我希望它来自可信任的发布者。我该如何获取一个Authenticode证书并用它签署我的应用程序?这样当应用程序启动时,它就是来自可信任的发布者。
我该如何安装证书?我需要在开发服务器上安装它吗?还是安装位置无关紧要?
整个过程是如何工作的?我不想花费三到五百美元购买一个证书,然后安装错误导致一无所获。
有没有关于购买和安装证书以及签署ClickOnce应用程序的好教程?
1个回答

17

我最近经历了这个过程。证书并不贵 - 我们花不到100美元就得到了一个代码签名证书。

拿到证书后,请遵循常见问题解答HOWTO: Code signing how-to*来对您的代码(二进制文件)进行签名。

之后,您需要在项目属性中转到“签名”并上传证书(适用于ClickOnce)。您可以跳过代码签名,仅对ClickOnce进行签名。

ClickOnce需要代码签名证书,其他证书将无法使用,请参阅ClickOnce Deployment and Authenticode

对于ClickOnce应用程序,您必须拥有有效的Authenticode证书 用于代码签名;如果您尝试使用其他类型的证书(例如数字电子邮件 证书),它将无法工作。

2018年1月更新: StartSSL不再受信任,我没有找到任何免费的(或类似于StartSSL提供的)代码签名证书。最后,我选择了ksoftware.net - 每年84美元的Comodo代码签名证书(但您需要拥有DUNS记录供他们检查!)


2
在价格最便宜的情况下,哪种证书足以进行代码签名? - Mathias Lykkegaard Lorenzen
1
嗨,avs009,FAQ的链接已经失效了。 - Matas Vaitkevicius
是的,StartSSL也已经死了。请看我的更新-我加粗了它。 - avs099
@avs099,链接“HOWTO: Code signing how-to”仍然失效。 - Hugh W
StartSSL已经死了很多年了,请查看我的更新和评论。 - avs099

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