Opties voor ondertekening van code voor Windows app-ontwikkelaars

Als u uw app publiceert als een MSIX-pakket via de Microsoft Store, wordt codeondertekening gratis en automatisch voor u afgehandeld, Microsoft het pakket na certificering opnieuw ondertekent en u geen certificaat hoeft aan te schaffen of te beheren. Als u publiceert als een MSI/EXE-installatieprogramma via de Store, bent u verantwoordelijk voor Authenticode-ondertekening van uw installatieprogramma voordat u het inzendt. Alle andere items in dit artikel zijn van toepassing op apps die zijn gedistribueerd buiten de Microsoft Store.

Vergelijking in één oogopslag

Option Cost Availability SmartScreen-gedrag In aanmerking komende winkel Ideaal voor
Microsoft Store (MSIX) — Store ondertekent uw pakket opnieuw Gratis Wereldwijd ✅ Geen waarschuwingen ✅ Ja Aanbevolen voor de meeste nieuwe apps
Microsoft Store (MSI/EXE installer) — publisher moet zich ondertekenen Certificaatketening naar Trusted Root Program-CA vereist (afhankelijk van de CA) Wereldwijd ✅ Er worden geen SmartScreen-prompts weergegeven tijdens de installatie van de Store (UAC wordt mogelijk nog steeds weergegeven) ✅ Ja Bestaande Win32-apps die worden ingediend via het MSI/EXE-installatiepad
Azure Artefact Handtekening (voorheen Vertrouwd Signeren) ~$ 9,99/maand Organisaties: USA, Canada, EU, UK. Personen: alleen VS en Canada ⚠Reputatie wordt in de loop van de tijd opgebouwd; initiële waarschuwingen zijn te verwachten ❌ Nee Aanbevolen voor distributie zonder store
OV-certificaat (van een CA zoals DigiCert, Sectigo) $150–300/jaar Wereldwijd ⚠️ Hetzelfde als Azure Artifact Signing – reputatie wordt opgebouwd na verloop van tijd ❌ Nee Ontwikkelaars die geen gebruik kunnen maken van Azure Artifact Signing of die de voorkeur geven aan traditionele CA's
EV-certificaat $ 400 + / jaar Wereldwijd ⚠ϑ Gelijk aan OV sinds 2024 — niet langer direct bypass ❌ Nee Niet meer specifiek aanbevolen voor SmartScreen-bypass
Zelfondertekend certificaat Gratis ❌ Installatie voor openbare gebruikers blokkeren ❌ Nee Alleen ontwikkeling/test of ondernemingen met een beheerd certificaatvertrouwen
Geen handtekening Gratis ❌ Sterke SmartScreen-blokkering; ondernemingen kunnen het volledig blokkeren ❌ Nee Niet aanbevolen voor openbare distributie

Microsoft Store — MSIX-inzendingen: geen ondertekening nodig

Het publiceren van een MSIX-pakket via de Microsoft Store is het aanbevolen distributiepad voor de meeste Windows apps. Microsoft uw pakket automatisch opnieuw ondertekent, wat betekent dat gebruikers nooit een SmartScreen-waarschuwing zien en u nooit een certificaat hoeft aan te schaffen of te verlengen.

Opmerking

Als u een Win32 MSI- of EXE-installatieprogramma naar de Store verzendt (in plaats van een MSIX-pakket), Microsoft uw installatieprogramma niet opnieuw ondertekent. Het installatieprogramma en de BIJBEHORENDE PE-bestanden moeten zijn ondertekend met een certificaatketen naar een CA in het Microsoft Trusted Root Program: zelfondertekende certificaten worden niet geaccepteerd. Zie de app-pakketvereisten voor MSI/EXE.

Maak een gratis ontwikkelaarsaccount op storedeveloper.microsoft.com. Nadat u zich hebt geregistreerd, gebruikt u Partnercentrum om uw app in te dienen en de vermelding ervan te beheren.

Publish your app to the Microsoft Store

Azure Artifact Signing (voorheen Trusted Signing) is Microsoft aanbevolen service voor ondertekening van programmacode voor ontwikkelaars die apps buiten de Store distribueren.

Belangrijke details:

  • Kosten: Ongeveer $ 9,99 / maand - aanzienlijk minder dan een traditioneel OV- of EV-certificaat
  • Identity-validatie: Microsoft valideert uw organisatie of afzonderlijke identiteit voordat certificaten worden uitgegeven; plan een paar werkdagen voor verificatie
  • No hardwaretoken vereist: Ondertekening kan rechtstreeks worden geïntegreerd met CI/CD-pijplijnen (GitHub Actions, Azure DevOps en andere): u hebt geen fysiek USB-token nodig
  • Gedrag van SmartScreen: Hetzelfde reputatiebouwmodel als OV-certificaten: nieuwe bestanden geven een SmartScreen-waarschuwing weer totdat ze voldoende downloadgeschiedenis verzamelen. Azure Ondertekening van artefacten biedt geen directe SmartScreen-vertrouwensrelatie.

Belangrijk

Geographic limitation: Azure Artifact Signing is beschikbaar voor organisaties in de VS, Canada, de Europese Unie en het Verenigd Koninkrijk. Individuele ontwikkelaars zijn momenteel beperkt tot de VS en Canada. Als u een afzonderlijke ontwikkelaar buiten deze regio's bent, raadpleegt u hieronder OV-certificaten .

Azure Artifact Signing-documentatie
Een MSIX-pakket ondertekenen met SignTool

OV-certificaten - traditionele CA-optie

Organisatie gevalideerde (OV)-certificaten van een certificeringsinstantie (CA) zoals DigiCert, Sectigo of GlobalSign zijn een gevestigde optie voor het ondertekenen van programmacode. Ze zijn de juiste keuze wanneer:

  • U bevindt zich buiten de VS, Canada, de EU of het VK (organisaties); of buiten de VS of Canada (afzonderlijke ontwikkelaars) en kan geen gebruik maken van Azure-artefactondertekening
  • Uw organisatie heeft al een relatie met een specifieke CA
  • Uw zakelijke klanten vereisen een certificaat van een bepaalde CERTIFICERINGsinstantie

Belangrijke details:

  • Kosten: Doorgaans $ 150-300 per jaar, afhankelijk van de CA en de certificaatlaag
  • Identiteitsvalidatie: De CA valideert de juridische identiteit van uw organisatie voordat het certificaat wordt uitgegeven; meerdere werkdagen toestaan
  • HSM-vereiste: Vanaf juni 2023 vereist het CA/browserforum persoonlijke sleutels voor OV-certificaten die moeten worden opgeslagen op een HSM (Hardware Security Module) of hardwaretoken. De meeste CA's bieden een compatibele USB-token of cloud HSM-optie.
  • SmartScreen behavior: Equivalent aan Azure Artifact Signing — reputatie verzamelt per bestandshash in de loop van de tijd. Verwacht SmartScreen-prompts voor nieuwe bestanden.

OV-certificaten zijn een bewezen optie en zijn functioneel gelijk aan Azure Artefactondertekening voor SmartScreen-doeleinden. Als u zich in de VS of Canada (of een organisatie in de EU of het VK) bevindt, is Azure Artifact Signing doorgaans rendabeler en integreert ze soepeler met geautomatiseerde build-pijplijnen.

Uitgebreide validatiecertificaten (EV) hebben voorheen SmartScreen volledig overgeslagen bij de eerste keer downloaden, waardoor ze de standaardkeuze zijn voor nieuwe apps zonder reputatie. Dat gedrag is in 2024 verwijderd. EV-ondertekende bestanden doorlopen nu hetzelfde reputatiebouwproces als OV-certificaten.

Wat betekent dit:

  • Als u al een EV-certificaat hebt, is het nog steeds geldig en functioneel voor ondertekening. Blijf het gebruiken totdat het verloopt
  • EV-certificaten vereisen nog steeds strengere identiteitsvalidatie, wat van belang kan zijn voor ondernemingsaankoop of andere vertrouwenscontexten
  • Het betalen van de EV-premie ($ 400+/jaar) alleen om SmartScreen-waarschuwingen te voorkomen, is niet langer gerechtvaardigd . U ziet nog steeds dezelfde waarschuwingen als met een OV-certificaat

SmartScreen-reputatie voor ontwikkelaars en volledige informatie over hoe reputatie wordt opgebouwd en wat gebruikers zien

Zelfondertekende certificaten : alleen ontwikkelen en testen

Een zelfondertekend certificaat wordt standaard niet vertrouwd door Windows en activeert een sterk SmartScreen-blok voor gebruikers die het certificaat niet handmatig als vertrouwde basis hebben geïnstalleerd. Hierdoor zijn zelfondertekende certificaten niet geschikt voor openbare distributie.

Geschikt gebruik:

  • Lokale ontwikkeling en testen : u bepaalt de machine en kunt het certificaat handmatig installeren
  • Interne bedrijfsdistributie : uw IT-afdeling kan het certificaat implementeren als een vertrouwde basis via Intune of Groepsbeleid, zodat beheerde apparaten de app op de achtergrond kunnen installeren

Een MSIX-pakket ondertekenen met SignTool

Open source: SignPath Foundation

Als uw project is open source, biedt SignPath Foundation gratis codeondertekening voor in aanmerking komende opensource-projecten. Het programma biedt certificaatondertekening op OV-niveau via een beheerde pijplijn. Controleer de website van SignPath Foundation op geschiktheidsvereisten en het toepassingsproces.