Windows uygulama geliştiricileri için kod imzalama seçenekleri

Uygulamanızı Microsoft Store aracılığıyla MSIX paketi olarak yayımlarsanız kod imzalama ücretsizdir ve sizin için otomatik olarak işlenir; Microsoft sertifikadan sonra paketi yeniden imzalar ve sertifika satın almanız veya yönetmeniz gerekmez. Mağaza aracılığıyla MSI/EXE yükleyicisi olarak yayımlarsanız, göndermeden önce Authenticode'un yükleyicinizi imzalaması sizin sorumluluğunuzdadır. Bu makaledeki diğer her şey, Microsoft Store dışında dağıtılan uygulamalar için geçerlidir.

Bir bakışta karşılaştırma

Seçenek Maliyet Availability SmartScreen davranışı Uygun mağaza En iyi kullanım alanı:
Microsoft Store (MSIX) — Store paketinizi yeniden imzalar Ücretsiz Dünya ✅ Uyarı yok ✅ Evet Çoğu yeni uygulama için önerilir
Microsoft Store (MSI/EXE yükleyicisi) — yayımcı oturum açmalıdır Güvenilir Kök Program CA sertifika zinciri gerekli (CA'ya göre değişir) Dünya ✅ Mağaza yüklemesi sırasında SmartScreen istemi yok (UAC yine de görünebilir) ✅ Evet MSI/EXE yükleyici yolu aracılığıyla gönderen mevcut Win32 uygulamaları
Azure Artifact İmzalama (eski adıyla Güvenilen İmzalama) ~$9,99/ay Kuruluşlar: ABD, Kanada, AB, Birleşik Krallık. Bireyler: Yalnızca ABD ve Kanada ⚠️ İtibar zamanla oluşur; ilk uyarıların beklenmesi normaldir. ❌ Hayır Mağaza dışı dağıtım için önerilir
OV sertifikası (DigiCert, Sectigo gibi bir CA'dan) $150-300/yıl Dünya ️ Azure Yapıt İmzalama ile aynı — zamanla itibar oluşur ❌ Hayır Azure Yapıt İmzalama özelliğini kullanamayan veya geleneksel CA'ları tercih eden geliştiriciler
EV sertifikası $400+/yıl Dünya ⚠✔ 2024'ten beri OV ile aynı — artık anında atlama yok ❌ Hayır SmartScreen atlama için artık özel olarak önerilmez
Otomatik olarak imzalanan sertifika Ücretsiz ❌ Genel kullanıcılar için yüklemeyi engeller ❌ Hayır Yalnızca geliştirme/test etme veya yönetilen sertifika güveni olan kuruluş
İmza yok Ücretsiz ❌ Güçlü SmartScreen bloğu; kuruluşlar tamamen engelleyebilir ❌ Hayır Genel dağıtım için önerilmez

Microsoft Store — MSIX gönderimleri: imzalama gerekmez

MSIX paketi Microsoft Store aracılığıyla yayımlamak, çoğu Windows uygulaması için önerilen dağıtım yoludur. Microsoft paketinizi otomatik olarak yeniden imzalarsanız, kullanıcılar hiçbir zaman SmartScreen uyarısı görmez ve hiçbir zaman sertifika satın almanız veya yenilemeniz gerekmez.

Uyarı

Mağaza'ya (MSIX paketi yerine) Win32 MSI veya EXE yükleyicisi gönderirseniz Microsoft yükleyicinizi yeniden imzalamaz. Yükleyici ve PE dosyaları, Microsoft Güvenilen Kök Programı sertifika zinciriyle imzalanmalıdır; otomatik olarak imzalanan sertifikalar kabul edilmemektedir. Bkz. MSI/EXE için uygulama paketi gereksinimleri.

storedeveloper.microsoft.com'da ücretsiz bir geliştirici hesabı oluşturun. Kaydoldıktan sonra uygulamanızı göndermek ve dökümünü yönetmek için İş Ortağı Merkezi'ni kullanın.

Uygulamanızı Microsoft Store

Azure Yapıt İmzalama (eski adı Güvenilir İmzalama), uygulamaları Mağaza dışına dağıtan geliştiriciler için Microsoft önerilen kod imzalama hizmetidir.

Önemli ayrıntılar:

  • Maliyet: Yaklaşık $9,99/ay — geleneksel OV veya EV sertifikasından önemli ölçüde daha az
  • Identity validation: Microsoft sertifika vermeden önce kuruluşunuzu veya bireysel kimliğinizi doğrular; doğrulama için birkaç iş günü planlayın
  • Gerekli donanım belirteci yok: İmzalama doğrudan CI/CD işlem hatlarıyla (GitHub Actions, Azure DevOps ve diğerleri) tümleşir; fiziksel USB belirteci gerekmez
  • SmartScreen davranışı: Yeni dosyalar yeterli saygınlık biriktirene kadar SmartScreen uyarısı gösterebilir. Azure Artifact Signing, anında SmartScreen güveni sağlamaz; ancak tutarlı bir yayıncı/imzalama kimliğiyle birbirini izleyen sürümlerin imzalanması, yayıncı itibarının zamanla oluşmasını sağlar; böylece sonraki sürümler bu güveni miras alabilir. Bkz. SmartScreen saygınlığı.

Önemli

Geographic limitation: Azure Artifact Signing, ABD, Kanada, Avrupa Birliği ve Birleşik Krallık'taki kuruluşlar tarafından kullanılabilir. Bireysel geliştiriciler şu anda ABD ve Kanada ile sınırlıdır. Bu bölgelerin dışında tek bir geliştiriciyseniz aşağıdaki OV sertifikaları bölümüne bakın.

Azure Artifact İmzalama dokümantasyonu
SignTool kullanarak MSIX paketini imzalamayı

OV sertifikaları — geleneksel CA seçeneği

DigiCert, Sectigo veya GlobalSign gibi bir Sertifika Yetkilisi'nden (CA) Kuruluş Tarafından Doğrulanmış (OV) sertifikalar, kod imzalama için iyi oluşturulmuş bir seçenektir. Bunlar şu durumlarda doğru seçimdir:

  • ABD, Kanada, AB veya Birleşik Krallık (kuruluşlar) dışında bulunuyorsunuz; veya ABD veya Kanada dışında (bireysel geliştiriciler) ve Azure Yapıt İmzalama özelliğini kullanamaz
  • Kuruluşunuzun zaten belirli bir CA ile ilişkisi var
  • Kurumsal müşterileriniz belirli bir CA'dan sertifika ister

Önemli ayrıntılar:

  • Maliyet: CA ve sertifika katmanına bağlı olarak genellikle yıllık 150-300 ABD doları
  • Kimlik doğrulaması: CA, sertifikayı vermeden önce kuruluşunuzun yasal kimliğini doğrular; birkaç iş gününe izin ver
  • HSM gereksinimi: Haziran 2023 itibarıyla CA/Browser Forumu, OV sertifikalarının bir donanım güvenlik modülünde (HSM) veya donanım belirtecinde depolanması için özel anahtarlar gerektirir. Çoğu CA uyumlu bir USB belirteci veya bulut HSM seçeneği sağlar.
  • SmartScreen davranışı: Bir itibar oluşana kadar yeni dosyalar için SmartScreen istemleriyle karşılaşmayı bekleyin. Tüm güvenilen sertifikalarda olduğu gibi, tutarlı bir kimlikle yayınları imzalamak, yayımcı itibarının her seferinde sıfırdan başlamak yerine sürümler arasında birikmesine olanak tanır.

OV sertifikaları kanıtlanmış bir seçenektir ve SmartScreen amaçlarıyla Azure Yapıt İmzalama ile işlevsel olarak eşdeğerdir. ABD veya Kanada'daysanız (ya da AB veya Birleşik Krallık'taki bir kuruluşta) Azure Yapıt İmzalama genellikle daha uygun maliyetlidir ve otomatik derleme işlem hatlarıyla daha sorunsuz bir şekilde tümleşir.

Genişletilmiş Doğrulama (EV) sertifikaları, geçmişte ilk indirmede SmartScreen'i tamamen atlayarak, saygınlığı olmayan yeni uygulamalar için tercih edilen seçenek haline gelmişti. Bu davranış 2024'te kaldırıldı. EV imzalı dosyalar artık OV sertifikaları ile aynı itibar oluşturma işleminden geçiyor.

Bunun anlamı:

  • Zaten bir EV sertifikanız varsa, hala geçerli ve imzalama için işlevseldir; süresi dolana kadar kullanmaya devam edin
  • EV sertifikaları yine de kurumsal tedarik veya diğer güven bağlamları için önemli olabilecek daha sıkı kimlik doğrulaması gerektirir
  • Yalnızca SmartScreen uyarılarını önlemek için EV premium ($400+/yıl) ödeme artık gerekçelendirilmeyecektir ; yine de OV sertifikasıyla aynı uyarıları görürsünüz

Tüm detaylar için SmartScreen güvenilirliği geliştiriciler için, bu sayede güvenilirliğin nasıl oluşturulduğu ve kullanıcıların ne gördüğü hakkında bilgi alın

Otomatik olarak imzalanan sertifikalar — yalnızca geliştirme ve test

Otomatik olarak imzalanan sertifikaya varsayılan olarak Windows güvenilmez ve sertifikayı güvenilir kök olarak el ile yüklememiş tüm kullanıcılar için güçlü bir SmartScreen bloğu tetikler. Bu, kendi imzalı sertifikaları genel dağıtım için uygun hale getirmez.

Uygun kullanımlar:

  • Yerel geliştirme ve test — makineyi denetlersiniz ve sertifikayı el ile yükleyebilirsiniz
  • Kurumsal iç dağıtım — BT departmanınız intune veya Grup İlkesi aracılığıyla sertifikayı güvenilir kök olarak dağıtabilir ve yönetilen cihazların uygulamayı sessizce yüklemesine olanak tanır

SignTool kullanarak MSIX paketini imzalamayı

Açık kaynak: SignPath Foundation

Projeniz açık kaynak ise SignPath Foundation uygun açık kaynak projeleri için ücretsiz kod imzalama özelliği sunar. Program, yönetilen işlem hattı üzerinden OV düzeyinde sertifika imzalama sağlar. Uygunluk gereksinimleri ve başvuru süreci için SignPath Foundation web sitesine bakın.