前言
项目打包签名是两年前做的了,使用Electron-Bulder,打包工具版本迭代较少,倒是electron版本更新飞快,目前官方推荐使用Electron Forge进行打包,后续再对两者进行对比,重新整理现在的实现方案。
签名简介
在Windows系统中,如果程序没有代码签名证书,或者代码签名授信级别较低时,系统同样会将其列为可信程序,只是当用户运行该应用时,系统会显示安全提示。在安装了安全软件的环境下,未签名的应用还会被拦截或无法安装运行。软件签名需要代码签名证书, 微软自2015年10月31日起Windows10内核软签名要提交EV代码签名证书。EV代码签名证书需要物理存储(如u盘)。
操作步骤
1. 购买证书
购买EV代码签名证书,联系产品,产品找运维负责购买
2.提取证书
购买后经销商会提供证书提取步骤,注意:证书只能够提取一次,如果已提取过,跳过该步骤。以下已购买的GlobalSign为例
3.安装eToken驱动
下载驱动进行安装
📎safnet driver-代码签名Token驱动 10.8.rar
如果是第一次提取,第2步时候已经需要安装
插入eToken后有下图表示成功
可以点进去看到证书详细信息
4. 项目配置证书信息,进行打包
配置里设置win.certificateSubjectName,取值使用证书信息里的序列号。这里是最关键的一步,及如何对certificateSubjectName进行赋值,参考下面截图,将序列号的键值对一起写进即可。
5.执行打包命令
执行的时候要插入eToken,打包过程中会调起驱动的密码确认,输入密码,这里可能会多次调起。相当于是每个可执行文件都要进行打包
6.打包签名成功
打包成功后,检查可执行程序的属性,会有数字签名一栏