Firma de paquetes VSIX

No es necesario firmar ensamblados de extensión para poder ejecutarlos en Visual Studio, pero es recomendable hacerlo.

Si desea proteger la extensión y asegurarse de que no se ha alterado, puede agregar una firma digital a un paquete VSIX. Cuando se firma un VSIX, el instalador de VSIX mostrará un mensaje que indica que está firmado, además de más información sobre la propia firma. Si se ha modificado el contenido de VSIX y vsix no se ha firmado de nuevo, el instalador de VSIX mostrará que la firma no es válida. La instalación no se detiene, pero se advierte al usuario.

Importante

A partir de Visual Studio 2015, los paquetes VSIX firmados con cualquier otro tipo de cifrado SHA256 se identificarán como tener una firma no válida. La instalación de VSIX no está bloqueada, pero se le avisará al usuario.

Firma de un VSIX con VSIXSignTool

Hay una herramienta de firma de cifrado SHA256 disponible en VisualStudioExtensibility en nuget.org en VsixSignTool.

Para usar VSIXSignTool

  1. Agregue el VSIX a un proyecto.

  2. Haga clic con el botón derecho en el nodo del proyecto en Explorador de soluciones, seleccionando Agregar | Administrar paquetes NuGet. Para obtener más información sobre NuGet y agregar paquetes NuGet, consulte la documentación de NuGet y los temas de la interfaz de usuario de Administrador de paquetes.

  3. Busque VSIXSignTool desde VisualStudioExtensibility e instale el paquete NuGet.

  4. Ahora puede ejecutar VSIXSignTool desde la ubicación de paquetes locales del proyecto. Consulte la ayuda de la línea de comandos de la herramienta para su escenario de firma (VSIXSignTool.exe /?).

    Por ejemplo, para firmar con un archivo de certificado protegido con contraseña:

    VSIXSignTool.exe sign /f <certfile> /p <password><VSIXfile>