Signature de packages VSIX

Les assemblys d’extension n’ont pas besoin d’être signés avant de pouvoir s’exécuter dans Visual Studio, mais il est recommandé de le faire.

Si vous souhaitez sécuriser votre extension et vous assurer qu’elle n’a pas été falsifiée, vous pouvez ajouter une signature numérique à un package VSIX. Lorsqu’un VSIX est signé, le programme d’installation VSIX affiche un message indiquant qu’il est signé, ainsi que des informations supplémentaires sur la signature elle-même. Si le contenu du VSIX a été modifié et que VSIX n’a pas été signé à nouveau, le programme d’installation VSIX indique que la signature n’est pas valide. L’installation n’est pas arrêtée, mais l’utilisateur est averti.

Important

À compter de Visual Studio 2015, les packages VSIX signés à l’aide de tout autre que le chiffrement SHA256 sont identifiés comme ayant une signature non valide. L’installation de VSIX n’est pas bloquée, mais l’utilisateur est averti.

Signature d’un VSIX avec VSIXSignTool

Il existe un outil de signature de chiffrement SHA256 disponible à partir de VisualStudioExtensibility sur nuget.org sur VsixSignTool.

Pour utiliser VSIXSignTool

  1. Ajoutez votre VSIX à un projet.

  2. Cliquez avec le bouton droit sur le nœud du projet dans Explorateur de solutions, en sélectionnant Ajouter | Gérer les packages NuGet. Pour plus d’informations sur NuGet et l’ajout de packages NuGet, consultez la documentation NuGet et Gestionnaire de package rubriques de l’interface utilisateur.

  3. Recherchez VSIXSignTool à partir de VisualStudioExtensibility et installez le package NuGet.

  4. Vous pouvez maintenant exécuter VSIXSignTool à partir de l’emplacement des packages locaux du projet. Consultez l’aide de la ligne de commande de l’outil pour votre scénario de signature (VSIXSignTool.exe / ?).

    Par exemple, pour signer avec un fichier de certificat protégé par mot de passe :

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