应用程序上架微软商店必备:对MSI/EXE安装程序数字签名
想要让基于Win32的MSI/EXE安装程序成功上架微软商店(Microsoft Store),数字签名是硬性门槛。微软官方明确要求:提交到微软商店的MSI/EXE安装程序及其所有PE文件,必须使用代码签名证书进行数字签名,且证书必须链接到属于Microsoft 受信任的根计划的证书颁发机构(CA)。这不仅是上架规则,更是保障应用安全、提升用户信任的核心环节。

结合微软官方文档,MSI/EXE安装程序数字签名必须满足以下核心规则:
代码签名证书必须来源于微软受信任根计划中的证书颁发机构(CA),比如 Digicert、Sectigo (Comodo)和GlobalSign等CA。自签名证书、非信任CA证书一律无效。
不仅安装程序本身(.msi或.exe)需要数字签名,应用包内的所有可移植可执行PE文件都必须使用代码签名证书进行数字签名,不能遗漏任何可执行文件。


(截图于Microsoft)
微软推荐来自DigiCert、Sectigo 或 GlobalSign等证书颁发机构(CA)颁发的代码签名证书。
代码签名证书根据验证级别主要分为OV代码签名证书,以及EV代码签名证书,两者均支持对.msi、.exe、.ocx、.xpi、.dll和.cab等格式文件的应用程序数字签名,两者的主要区别如下:
OV代码签名证书:企业信息验证,1到3个工作日签发。
EV代码签名证书:企业信息验证以及严格额外验证,1到5个工作日签发。除了支持普通软件的数字签名,还可用于内核驱动签名,以及驱动程序WHQL认证过程中所需的Microsoft Entra ID全局管理员账户及Windows硬件开发人员计划注册,应用更广,但价格相对高昂。
根据预算和实际需求选择合适的代码签名证书品牌和类型。
对MSI或EXE安装程序及所有可执行PE文件数字签名,签名步骤可参照《Sectigo EV 代码签名证书签名指南》。
生成版本化HTTPS下载链接,确保应用包符合静默安装、独立包要求。
注册Microsoft Store开发者帐户并完成验证,上传应用包并提交。
微软会对应用包进行认证,通过安全测试、技术合规性测试、内容符合性检查等一系列安全认证检查后,应用正式上架微软商店Microsoft Store。
备注:若您想体验云端代码签名,无缝集成CI/CD,实现自动化签名流水线,可申请锐安信远程代码签名服务,申请步骤可参阅《远程代码签名申请提交》。
对于Win32的MSI/EXE应用程序而言,使用可信代码签名证书对应用程序数字签名,是上架微软商店的必要步骤。它既满足微软官方强制审核规则,又能保障应用安全、降低用户安装阻碍。
开发者只需牢记:选择微软受信任的代码签名证书,完整签名所有应用包文件,严格遵循商店提交规范,就能顺利完成MSI/EXE应用程序的微软商店上架,触达亿万Windows用户。
