Options de signature de code pour les développeurs d’applications Windows

Si vous publiez votre application en tant que package MSIX via le Microsoft Store, la signature de code est gratuite et gérée automatiquement. Microsoft re-signe le package après la certification, et vous n'avez pas besoin d'acheter ou de gérer un certificat. Si vous publiez en tant que programme d’installation MSI/EXE via le Windows Store, vous êtes responsable de la signature de votre programme d’installation au préalable. Tout le reste de cet article s’applique aux applications distribuées à côté du Microsoft Store.

Comparaison en un clin d’œil

Choix Coûts Disponibilité Comportement de SmartScreen Magasin admissible Idéal pour
Microsoft Store (MSIX) — Store signe à nouveau votre package Gratuit Monde entier ✅ Aucun avertissement ✅ Oui Recommandé pour la plupart des nouvelles applications
Microsoft Store (programme d’installation MSI/EXE) — l’éditeur doit signer Chaînage de certificats vers l’Autorité de Certification du Programme Racine Approuvé requis (varie selon l'Autorité de Certification) Monde entier ✅ Aucun message SmartScreen pendant l'installation du Store (UAC peut toujours apparaître) ✅ Oui Applications Win32 existantes envoyées via le chemin d’installation MSI/EXE
Azure Signature d’artefact (anciennement signature approuvée) ~$9.99/mois Organisations : États-Unis, Canada, UE, Royaume-Uni. Individus : États-Unis et Canada uniquement ⚠️ La réputation se construit au fil du temps ; avertissements initiaux attendus ❌ Non Recommandé pour la distribution hors-Store
Certificat OV (d’une autorité de certification telle que DigiCert, Sectigo) 150 à 300 $ par année Monde entier ️ Identique à la signature d'artéfacts Azure — la réputation se construit au fil du temps ❌ Non Développeurs qui ne peuvent pas utiliser Azure signature d'artefacts ou qui préfèrent les autorités de certification traditionnelles
Certificat EV 400 $+/an Monde entier ⚠️ Identique à OV depuis 2024 — pas de contournement instantané ❌ Non N’est plus recommandé spécifiquement pour le contournement SmartScreen
Certificat auto-signé Gratuit ❌ Bloque l’installation pour les utilisateurs publics ❌ Non Développement/test uniquement ou entreprise avec approbation de certificat managé
Aucune signature Gratuit ❌ Blocage robuste de SmartScreen ; les entreprises peuvent bloquer complètement ❌ Non Non recommandé pour la distribution publique

Microsoft Store — Soumissions MSIX : aucune signature n’est nécessaire

La publication d’un package MSIX via le Microsoft Store est le chemin de distribution recommandé pour la plupart des applications Windows. Microsoft re-signe automatiquement votre paquet, ce qui signifie que les utilisateurs ne voient jamais d’avertissement de SmartScreen et que vous n’avez jamais besoin d’acheter ou de renouveler un certificat.

Note

Si vous envoyez un programme d'installation MSI ou EXE Win32 MSI ou EXE au Windows Store (plutôt qu'à un package MSIX), Microsoft ne signe pas de nouveau votre programme d'installation. Le programme d’installation et ses fichiers PE doivent être signés avec un certificat chaînant jusqu'à une autorité de certification dans le Programme de certification racine approuvé de Microsoft — les certificats auto-signés ne sont pas acceptés. Consultez la configuration requise pour le package d’application pour MSI/EXE.

Créez un compte de développeur gratuit à storedeveloper.microsoft.com. Après vous être inscrit, utilisez l’Espace partenaires pour soumettre votre application et gérer sa description.

Publier votre application dans le Microsoft Store

Azure La signature d'artefacts (anciennement signature approuvée) est le service de signature de code recommandé Microsoft pour les développeurs qui distribuent des applications en dehors du Windows Store.

Détails clés :

  • Coût: Environ 9,99 $ par mois — beaucoup moins qu’un certificat OV ou EV traditionnel
  • Validation d'identité : Microsoft valide l'organisation ou l'identité d'un individu avant d’émettre des certificats ; planifiez quelques jours ouvrables pour la vérification.
  • Aucun jeton matériel requis : Signature s'intègre directement avec les pipelines CI/CD (GitHub Actions, Azure DevOps et autres) : vous n'avez pas besoin d'un jeton USB physique
  • Comportement smartScreen : Le même modèle de création de réputation que les certificats OV : les nouveaux fichiers affichent un avertissement SmartScreen jusqu’à ce qu’ils accumulent suffisamment d’historique de téléchargement. La signature des artefacts Azure ne fournit pas une approbation immédiate de SmartScreen.

Important

Limitation géographique : La signature d’artefacts Azure est disponible pour les organisations aux États-Unis, au Canada, dans l’Union européenne et au Royaume-Uni. Les développeurs individuels sont actuellement limités aux États-Unis et au Canada. Si vous êtes développeur individuel en dehors de ces régions, consultez les certificats OV ci-dessous.

Azure documentation sur la signature d’artefacts
signer un package MSIX à l’aide de SignTool

Certificats OV : option d’autorité de certification traditionnelle

Les certificats validés par l’organisation (OV) d’une autorité de certification (CA) telle que DigiCert, Sectigo ou GlobalSign sont une option bien établie pour la signature de code. Ils sont le bon choix quand :

  • Vous êtes situé en dehors des États-Unis, du Canada, de l’UE ou du Royaume-Uni (organisations) ; ou en dehors des États-Unis ou du Canada (développeurs individuels) et ne peuvent pas utiliser Azure signature d’artefacts
  • Votre organisation a déjà une relation avec une autorité de certification spécifique
  • Vos clients d’entreprise ont besoin d’un certificat d’une autorité de certification particulière

Détails clés :

  • Coût: En règle générale, 150 à 300 $ par année en fonction de l’autorité de certification et du niveau de certificat
  • Validation d’identité : L’autorité de certification valide l’identité légale de votre organisation avant d’émettre le certificat ; autoriser plusieurs jours ouvrables
  • Condition requise pour HSM : À compter de juin 2023, l’autorité de certification/le forum du navigateur exige que les clés privées des certificats OV soient stockées sur un module de sécurité matériel (HSM) ou un jeton matériel. La plupart des autorités de certification fournissent un jeton USB compatible ou une option HSM cloud.
  • Comportement SmartScreen : Équivalent à la signature d’artefacts Azure : la réputation s’accumule par empreinte de fichier au fil du temps. Préparez-vous à recevoir des notifications SmartScreen concernant les nouveaux fichiers.

Les certificats OV sont une option éprouvée et sont fonctionnellement équivalents à la signature des artefacts Azure à des fins de SmartScreen. Si vous êtes aux États-Unis ou au Canada (ou une organisation dans l’UE ou au Royaume-Uni), Azure Artifact Signing est généralement plus rentable et s’intègre plus facilement aux pipelines de build automatisés.

Les certificats de validation étendue (EV) ont précédemment contourné SmartScreen entièrement lors du premier téléchargement, ce qui en fait le choix go-to pour les nouvelles applications sans réputation. Ce comportement a été supprimé en 2024. Les fichiers signés EV passent désormais par le même processus de création de réputation que les certificats OV.

Ce que cela signifie :

  • Si vous disposez déjà d’un certificat EV, il est toujours valide et fonctionnel pour la signature : continuez à l’utiliser jusqu’à son expiration.
  • Les certificats EV nécessitent toujours une validation d’identité plus rigoureuse, ce qui peut être important pour l’approvisionnement d’entreprise ou d’autres contextes de confiance
  • Le paiement de la prime EV (400 $/an) uniquement pour éviter les avertissements SmartScreen n’est plus justifié . Vous verrez toujours les mêmes avertissements qu’avec un certificat OV

réputation SmartScreen pour les développeurs pour obtenir des détails complets sur la façon dont la réputation se construit et ce que les utilisateurs peuvent voir

Certificats auto-signés : développement et test uniquement

Un certificat auto-signé n'est pas approuvé par Windows par défaut et déclenche un bloc SmartScreen fort pour tout utilisateur qui n'a pas installé manuellement le certificat en tant que racine approuvée. Cela rend les certificats auto-signés inadaptés à la distribution publique.

Utilisations appropriées :

  • Développement et test locaux : vous contrôlez l’ordinateur et pouvez installer le certificat manuellement
  • Distribution interne d’entreprise : votre service informatique peut déployer le certificat en tant que racine approuvée via Intune ou stratégie de groupe, ce qui permet aux appareils gérés d’installer l’application en mode silencieux.

signer un package MSIX à l’aide de SignTool

Open source : SignPath Foundation

Si votre projet est open source, SignPath Foundation offre une signature de code gratuite pour les projets open source éligibles. Le programme fournit une signature de certificat au niveau OV via un pipeline managé. Consultez le site web SignPath Foundation pour connaître les conditions d’éligibilité et le processus d’application.