VSTO用clickonce发布时如何自建数字证书

本篇是技术类。

做vsto开发的知道,发布程序最简单的方式是clickonce,也是visual studio默认支持的。clickonce做网络发布非常好,自动安装缺席的控件,自动更新,简洁明了,用户体验佳。但毛病是需要数字签名,否则通过网络发布后,会提示用户没有认证,然后就安装不上去了。

数字证书是一套安全机制。具体啥机制的我也没搞懂,哈哈。大家自行搜索吧。

进入正题。数字签名,要么通过CA机构买,要么自建一个。

自建的数字证书,需要用户先安装证书才行;购买的就不需要。想想容易理解。自建证书本质上是不被网络信任的,用户主动安装你才算信任对吧。

本篇就讲如何自建数字证书。

测试环境

  • visual studio 2017
  • vsto excel 2013
  • windows 10

步骤

visual studio 2017 发布clickonce时需要用pfx文件去签名。pfx是一种软证书。我们的目标就是做一个pfx出来。

我们需要signtools。做pfx的签名工具。里面真实有用的,只有三个文件。

VSTO用clickonce发布时如何自建数字证书_第1张图片
signtool

pvkimp文件需要安装。双击安装。

makecert -r -n "CN=苏州通商软件" -b 01/01/2017 -e 01/01/2050 -sv my.pvk my.cer

过程中会出现要输入密码,输入一摸一样的密码即可。CN= 后面的内容改成自己公司名称。 -b和-e分别是证书有效期,你可以搞大一点。最后他会生成两个文件my.pvk和my.cer。待用。

makecert命令解释

cert2spc my.cer my.spc

把cer文件转成spc文件。没啥说的。

最后是

pvkimprt -pfx my.spc my.pvk

过程中也要输入密码,用前面的密码即可。这样他就导出一个pfx文件了。这就是我们自建的,有三十年有效期的数字证书。

另外网上大量查到用pvk2pfx工具的,这个工具在本环境下没有,不知道为什么。

Visual studio 内导入签名

VSTO用clickonce发布时如何自建数字证书_第2张图片
image.png

选择从文件选择。导入刚刚的pfx文件即可。

VSTO用clickonce发布时如何自建数字证书_第3张图片
本文来自专注于团队协作的通商软件

你可能感兴趣的:(VSTO用clickonce发布时如何自建数字证书)