83 votes

Comment passer l'écran intelligent sur Win8 lors de l'installation d'une application signée ?

Nous sommes développeurs et nous avons un programme d'installation d'application signé numériquement. Lorsque nous installons cette application, elle fait apparaître l'écran intelligent, ce qui affecte l'expérience d'installation. Voici ce qu'il dit

Windows a protégé votre PC

Windows SmartScreen a empêché le démarrage d'une application non reconnue, L'exécution de cette application peut mettre votre PC en danger.

Je pense que Microsoft a une stratégie pour vérifier l'application en plus de la signature numérique. Est-ce que quelqu'un a l'expérience de ce problème et peut-il me donner un indice pour résoudre ce problème ?

4voto

Chris Points 21

J'ai testé la solution EV cert et elle fonctionne.

Malheureusement, je dois aussi mentionner que les certificats EV sont incompatibles avec TeamBuild qui exécute la signature dans le contexte d'un service. Les certificats EV nécessitent un jeton matériel qui s'interface avec le fournisseur de services cryptographiques fourni par SafeNet, Inc. pour une utilisation avec tous les fournisseurs de certificats EV autorisés (VeriSign et DigiCert).

Lors de la signature, les pilotes de Safenet demanderont un mot de passe, ce qui est quelque peu incompatible avec l'exécution dans le contexte d'un service. En outre, Safenet fournit une protection qui empêche la signature à partir de n'importe quel endroit autre que la console actuelle. Vous ne pouvez même pas signer à partir d'une session de bureau à distance. Ainsi, la signature à partir de Teambuild est au mieux problématique, au pire impossible.

J'ai travaillé avec Microsoft et ils n'ont pas été en mesure de fournir une solution de contournement pour la signature ou tout autre moyen d'obtenir une réputation instantanée sous SmartScreen.

1voto

Daniel Points 496

Malheureusement, je n'ai pas assez de contacts pour commenter simplement l'une des réponses ci-dessus. Cependant, si vous spécifiez une confiance partielle pour votre application publiée (j'ai choisi la zone Internet) et que vous avez un certificat de signature de code en place, aucun avertissement de l'écran intelligent ne s'affiche (vérifié sur Win10).

1voto

Luciano Arruda Points 11

Je signe mon application de manière automatisée en utilisant un certificat EV sur un jeton ( GlobalSign ) . Utiliser un fichier .bat. Dans le fichier ".bat", taper ex : (Pour sha1)

SignTool.exe sign /n "Exact Enterprise name in the cert - token" /t "http://timestamp.globalsign.com/scripts/timstamp.dll" "c:\Patch_to_file\Filename.exe"

Le "Nom exact de l'entreprise dans le certificat - jeton" doit être le nom exact qui figure dans le certificat (jeton).

1voto

Simon Carter Points 11

"La version du fichier n'est pas compatible avec la version de Windows que vous utilisez". Sous Windows 2008 server, il n'y a pas de bouton "Plus d'informations" pour choisir d'installer de toute façon.

Comme nous développons des logiciels de bureau Windows (et non des "applications") à l'aide de produits non Microsoft (Delphi) et que nous utilisons Innosetup pour notre programme d'installation, la validation de l'application n'a pas de sens. Elle reste là pendant 30 minutes sans rien faire, nous démarrons simplement l'application, puis nous la fermons manuellement, et elle génère un rapport de réussite.

Nous signons toutes nos versions et tous les exécutables qu'elles contiennent.

Lorsque nous téléchargeons le XML vers Microsoft, le XML certifié se trouve sur un site qui n'est pas lié à notre compte développeur principal, sans possibilité de le publier sur le Microsoft Store. 45 minutes perdues par application.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X