签名 Windows 应用

代码签名是一种安全技术,用于证明应用是由您创建的。

从 2023 年 6 月 1 日 00:00 UTC 开始,代码签名证书的私钥需要存储在符合 FIPS 140 Level 2、Common Criteria EAL 4+ 或同等标准的硬件存储模块上。实际上,这意味着以下步骤中使用的基于软件的 OV 证书将不再可供购买。有关如何使用较新的基于令牌的证书对应用程序进行签名的说明,请参阅您的证书颁发机构的文档。

先决条件

安装 Visual Studio

在 Windows 上,应用使用Sign Tool进行签名,该工具包含在 Visual Studio 中。安装 Visual Studio 以获取签名实用程序(免费的社区版就足够了)。

获取证书

您可以从许多供应商处获取Windows Authenticode代码签名证书。价格各不相同,因此您可能需要花点时间进行比较。流行的供应商包括

  • 还有其他一些,请四处看看,找到一个适合您需求的!😄

保护证书密码

您的证书密码应为秘密。不要公开分享或将其提交到您的源代码中。

配置 Electron Forge

在 Windows 上,Electron 应用在构建步骤的安装程序级别进行签名。

一旦您拥有证书的个人信息交换(.pfx)文件,您就可以使用certificateFilecertificatePassword 字段在 Electron Forge 中分别对Squirrel.WindowsMSI 安装程序进行签名。

例如,如果您正在创建 Squirrel.Windows 安装程序

forge.config.js
module.exports = {
  packagerConfig: {},
  makers: [
    {
      name: '@electron-forge/maker-squirrel',
      config: {
        certificateFile: './cert.pfx',
        certificatePassword: process.env.CERTIFICATE_PASSWORD
      }
    }
  ]
};

上次更新