Condividi tramite


Opzioni di firma del codice per sviluppatori di app Windows

Se si pubblica l'app come pacchetto MSIX tramite il Microsoft Store, la firma del codice è gratuita e gestita automaticamente, Microsoft firma nuovamente il pacchetto dopo la certificazione e non è necessario acquistare o gestire un certificato. Se si pubblica come programma di installazione MSI/EXE tramite lo Store, si è responsabili della firma Authenticode del programma di installazione prima dell'invio. Tutto il resto di questo articolo si applica alle app distribuite fuori dal Microsoft Store.

Confronto a colpo d'occhio

Opzione Cost Disponibilità Comportamento di SmartScreen Store idoneo Ideale per
Microsoft Store (MSIX): Riautentica il tuo pacchetto Gratuito Tutto il mondo ✅ Nessun avviso ✅ Sì Consigliato per la maggior parte delle nuove app
Microsoft Store (programma di installazione MSI/EXE) — publisher deve firmare Incatenamento dei certificati al programma radice attendibile CA richiesto (a seconda della CA) Tutto il mondo ✅ Nessuna richiesta di SmartScreen durante l'installazione dallo Store (può ancora apparire UAC) ✅ Sì App Win32 esistenti fornite tramite percorso di installazione MSI/EXE
Firma di artefatti di Azure (in precedenza firma affidabile) ~$9,99/mese Organizzazioni: Stati Uniti, Canada, UE, Regno Unito. Individui: solo Stati Uniti e Canada ⚠️ La reputazione si costruisce nel tempo; avvisi iniziali previsti ❌ No Consigliato per la distribuzione non nello Store
Certificato OV (da una CA, ad esempio DigiCert, Sectigo) $150–300/anno Tutto il mondo ️ Uguale alla firma di artefatto di Azure — la reputazione si sviluppa nel tempo ❌ No Sviluppatori che non possono usare la firma degli artefatti Azure o che preferiscono le CA tradizionali
Certificato EV $400+/anno Tutto il mondo ⚠️ Uguale a OV dal 2024 — non più bypass istantaneo ❌ No Non più consigliato specificatamente per il bypass SmartScreen
Certificato autofirmato Gratuito - ❌ Blocca l'installazione per gli utenti pubblici ❌ No Solo sviluppo/test o azienda con gestione della fiducia del certificato
Nessuna firma Gratuito - ❌ Blocco di SmartScreen potente; le aziende possono bloccare completamente ❌ No Non consigliato per la distribuzione pubblica

Microsoft Store — invii MSIX: nessuna firma necessaria

La pubblicazione di un pacchetto MSIX tramite il Microsoft Store è il percorso di distribuzione consigliato per la maggior parte delle app Windows. Microsoft firma nuovamente automaticamente il tuo pacchetto, ossia gli utenti non vedono mai un avviso di SmartScreen e non è mai necessario acquistare o rinnovare un certificato.

Annotazioni

Se invii un programma di installazione MSI o EXE Win32 allo Store (anziché un pacchetto MSIX), Microsoft non firma nuovamente il programma di installazione. Il programma di installazione e i relativi file PE devono essere firmati con un certificato concatenato a una CA nel Programma Microsoft Trusted Root: i certificati autofirmati non vengono accettati. Vedere Requisiti del pacchetto dell'app per MSI/EXE.

Creare un account per sviluppatore gratuito in storedeveloper.microsoft.com. Dopo la registrazione, usa il Partner Center per inviare la tua app e gestirne l'elenco.

Pubblicare l'app nel Microsoft Store

Azure Firma di Artefatti (in precedenza Firma Attendibile) è il servizio di firma del codice consigliato da Microsoft per gli sviluppatori che distribuiscono app fuori dallo Store.

Dettagli chiave:

  • Costo: Circa $ 9,99 al mese - significativamente inferiore a un certificato OV o EV tradizionale
  • Validazione dell'identità: Microsoft verifica l'organizzazione o l'identità del singolo prima di rilasciare i certificati; pianificate alcuni giorni lavorativi per la verifica
  • Nessun token hardware richiesto: La firma si integra direttamente con le pipeline CI/CD (GitHub Actions, Azure DevOps e altri) — senza bisogno di un token USB fisico.
  • Comportamento di SmartScreen: Lo stesso modello di costruzione della reputazione dei certificati OV: i nuovi file visualizzeranno un avviso SmartScreen fino a quando non accumuleranno una cronologia di download sufficiente. Azure la firma degli artefatti non fornisce un'attendibilità immediata di SmartScreen.

Importante

Limitazione Geographic: Azure Artifact Signing è disponibile per le organizzazioni negli Stati Uniti, in Canada, nell'Unione europea e nel Regno Unito. I singoli sviluppatori sono attualmente limitati agli Stati Uniti e al Canada. Se si è un singolo sviluppatore all'esterno di tali aree, vedere certificati OV di seguito.

Documentazione sulla firma degli artefatti Azure
Firmare un pacchetto MSIX con SignTool

Certificati OV - opzione CA tradizionale

I certificati convalidati dall'organizzazione da un'autorità di certificazione (CA) come DigiCert, Sectigo o GlobalSign sono un'opzione ben stabilita per la firma del codice. Sono la scelta giusta quando:

  • L'utente si trova all'esterno degli Stati Uniti, del Canada, dell'UE o del Regno Unito (organizzazioni); o all'esterno degli Stati Uniti o del Canada (singoli sviluppatori) e non possono usare Azure firma artefatto
  • L'organizzazione ha già una relazione con una CA specifica
  • I clienti aziendali richiedono un certificato da una ca specifica

Dettagli chiave:

  • Costo: In genere $ 150-300/anno a seconda del livello CA e certificato
  • Convalida dell'identità: La CA convalida l'identità legale dell'organizzazione prima di rilasciare il certificato; consenti diversi giorni lavorativi
  • Requisito del modulo di protezione hardware: A partire da giugno 2023, il forum ca/browser richiede che le chiavi private per i certificati OV vengano archiviate in un modulo di protezione hardware (HSM) o in un token hardware. La maggior parte delle ca offre un token USB compatibile o un'opzione HSM cloud.
  • comportamento SmartScreen: Equivalente alla firma di artefatto Azure: la reputazione si accumula nel tempo per ogni hash di file. Aspettatevi le richieste di SmartScreen per i nuovi file.

I certificati OV sono un'opzione collaudata e sono funzionalmente equivalenti alla firma di artifact di Azure a scopo SmartScreen. Se ci si trova negli Stati Uniti o in Canada (o in un'organizzazione nell'UE o nel Regno Unito), Azure Firma di artefatti è in genere più conveniente e si integra più facilmente con le pipeline di compilazione automatizzate.

I certificati di convalida estesa (EV) in precedenza ignoravano completamente SmartScreen al primo download, rendendoli la scelta go-to per le nuove app senza reputazione. Questo comportamento è stato rimosso nel 2024. I file con firma EV ora passano attraverso lo stesso processo di creazione della reputazione dei certificati OV.

Ciò significa:

  • Se si dispone già di un certificato EV, è ancora valido e funzionale per la firma, continuare a usarlo fino alla scadenza
  • I certificati EV richiedono ancora una convalida più rigorosa dell'identità, che può essere importante per l'approvvigionamento aziendale o altri contesti di attendibilità
  • Il pagamento del premio EV ($ 400+/anno) esclusivamente per evitare avvisi SmartScreen non è più giustificato . Verranno comunque visualizzati gli stessi avvisi di un certificato OV

reputazione di SmartScreen per gli sviluppatori per informazioni dettagliate sul modo in cui la reputazione si basa e su cosa vedono gli utenti

Certificati autofirmato: solo sviluppo e test

Un certificato autofirmato non è considerato attendibile da Windows per impostazione predefinita e attiverà un blocco SmartScreen sicuro per qualsiasi utente che non ha installato manualmente il certificato come radice attendibile. In questo modo, i certificati autofirmato non sono idonei per la distribuzione pubblica.

Usi appropriati:

  • Sviluppo e test locali : è possibile controllare il computer e installare manualmente il certificato
  • Distribuzione interna aziendale : il reparto IT può distribuire il certificato come radice attendibile tramite Intune o Criteri di gruppo, consentendo ai dispositivi gestiti di installare l'app automaticamente

Firmare un pacchetto MSIX con SignTool

Open source: SignPath Foundation

Se il progetto è open source, SignPath Foundation offre la firma del codice gratuito per i progetti open source idonei. Il programma fornisce la firma del certificato a livello di OV tramite una pipeline gestita. Controllare il sito Web SignPath Foundation per i requisiti di idoneità e il processo dell'applicazione.