适用范围:
Visual Studio
Visual Studio for Mac
Visual Studio Code
扩展程序集无需签名,即可在 Visual Studio 中运行,但最好这样做。
如果要保护扩展并确保它未被篡改,可以将数字签名添加到 VSIX 包。 对 VSIX 进行签名后,VSIX 安装程序将显示一条消息,指示它已签名,以及有关签名本身的详细信息。 如果修改了 VSIX 的内容,并且尚未再次对 VSIX 进行签名,VSIX 安装程序将显示签名无效。 安装不会停止,但会警告用户。
从 Visual Studio 2015 开始,使用 SHA256 加密以外的任何内容签名的 VSIX 包将被标识为签名无效。 VSIX 安装不会被阻止,但用户将收到警告。
VsixSignTool
nuget.org 上的
VisualStudioExtensibility
提供了 SHA256 加密签名工具。
将 VSIX 添加到项目。
右键单击解决方案资源管理器中的项目节点,然后选择
“添加 | ”管理 NuGet 包
。 有关 NuGet 和添加 NuGet 包的详细信息,请参阅
NuGet 文档
和
包管理器 UI
主题。
从 VisualStudioExtensibility 中搜索 VSIXSignTool 并安装 NuGet 包。
现在可以从项目的本地包位置运行 VSIXSignTool。 有关签名方案 (VSIXSignTool.exe /?) ,请参阅工具的命令行帮助。
例如,使用受密码保护的证书文件进行签名:
VSIXSignTool.exe sign /f <certfile> /p <password><VSIXfile>
传送 Visual Studio 扩展