Uygulama ve dağıtım bildirimlerini imzalama
ClickOnce dağıtımını kullanarak bir uygulama yayımlamak istiyorsanız, uygulama ve dağıtım bildirimlerinin ortak/özel anahtar çiftiyle imzalanması ve Authenticode teknolojisi kullanılarak imzalanması gerekir. Windows sertifika deposundan veya anahtar dosyasından bir sertifika kullanarak bildirimleri imzalayabilirsiniz.
Bu makaledeki bilgiler yalnızca .NET Framework 4.8.1 veya önceki bir sürümü kullanıyorsanız geçerlidir. .NET 5 veya sonraki bir sürümü kullanıyorsanız ClickOnce kullanarak .NET Windows masaüstü uygulaması dağıtma bölümünde yer alan adımları izleyin.
ClickOnce dağıtımı hakkında daha fazla bilgi için bkz . ClickOnce güvenliği ve dağıtımı.
ClickOnce bildirimlerini imzalamak, .exe tabanlı uygulamalar için isteğe bağlıdır. Daha fazla bilgi için bu belgenin "İmzasız bildirimler oluşturma" bölümüne bakın.
Anahtar dosyaları oluşturma hakkında bilgi için bkz . Nasıl yapılır: Ortak-özel anahtar çifti oluşturma.
Not
Visual Studio yalnızca .pfx uzantısına sahip Kişisel Bilgi Değişimi (PFX ) anahtar dosyalarını destekler. Ancak, proje özelliklerinin İmzalama sayfasında Mağaza'dan Seç'e tıklayarak geçerli kullanıcının Windows sertifika deposundan diğer sertifika türlerini seçebilirsiniz.
Sertifika kullanarak imzalama
Bu yöntemi kullanmak için, sertifika yetkilisi (CA) tarafından imzalanan bir sertifikanız olmalıdır. Sertifikalar üçüncü taraf sertifika hizmeti sağlayıcıları veya kuruluştaki yetkili kuruluşlar tarafından verilir.
Proje özellikleri penceresine gidin (Çözüm Gezgini proje düğümüne sağ tıklayın ve Özellikler'i seçin). İmzalama sekmesinde ClickOnce bildirimlerini imzala onay kutusunu seçin.
Mağaza'dan Seç düğmesine tıklayın.
Sertifika Seç iletişim kutusu görüntülenir ve Windows sertifika deposunun içeriğini görüntüler.
İpucu
Sertifika özelliklerini görüntülemek için buraya tıklayın'a tıklarsanız, Sertifika Ayrıntıları iletişim kutusu görüntülenir. Bu iletişim kutusu sertifika hakkında ayrıntılı bilgiler ve ek seçenekler içerir. Ek yardım bilgilerini görüntülemek için Sertifikalar'a tıklayın.
Bildirimleri imzalamak için kullanmak istediğiniz sertifikayı seçin.
İpucu
Depoda sertifika yoksa, yine de bir test sertifikası kullanarak oturum açabilirsiniz.
Ayrıca, zaman damgası sunucusunun adresini Zaman damgası sunucusu URL'si metin kutusunda belirtebilirsiniz. Bu, bildirimin ne zaman imzalandığını belirten bir zaman damgası sağlayan bir sunucudur. Genellikle ca tarafından imzalanan sertifikalar sunan aynı üçüncü taraf tarafından sağlanır.
Mevcut bir anahtar dosyasını kullanarak oturum açma
İmzalama sayfasında ClickOnce bildirimlerini imzala onay kutusunu seçin.
Dosyadan Seç düğmesine tıklayın.
Dosya Seç iletişim kutusu görüntülenir.
Dosya Seç iletişim kutusunda, kullanmak istediğiniz anahtar dosyasının (.pfx) konumuna gidin ve Aç'a tıklayın.
Not
Bu seçenek yalnızca .pfx uzantısına sahip dosyaları destekler. Başka bir biçimde bir anahtar dosyanız veya sertifikanız varsa, dosyayı Windows sertifika deposunda depolayın ve sertifikayı seçin. Önceki yordamda açıklanmıştır. Seçilen sertifikanın amacı kod imzalamayı içermelidir.
Dosyayı açmak için parola girin iletişim kutusu görüntülenir. (.pfx dosyası Windows sertifika deponuzda zaten depolanmışsa veya parola korumalı değilse, parola girmeniz istenmez.)
Anahtar dosyasına erişmek için parolayı girin ve enter tuşuna basın.
Sertifikanın özelliklerini görüntülemek için Diğer ayrıntılar... öğesini seçin. ClickOnce, bir kullanıcı uygulamanızı yüklediğinde sertifikayı gösterdiğinde Konu alanının değerini Yayımcı olarak görüntüler. Aşağıda, ClickOnce uygulaması yüklendiğinde kullanıcının neler gördüğüne ilişkin bir örnek verilmiştir:
Not
.pfx dosyası sertifika zincirleme bilgilerini içeremez. Bu durumda aşağıdaki içeri aktarma hatası oluşur: Şifre çözme için sertifika ve özel anahtar bulunamıyor. Sertifika zincirleme bilgilerini kaldırmak için Certmgr.msc kullanabilir ve *.pfx dosyasını dışarı aktarırken Tüm sertifikaları ekle seçeneğini devre dışı bırakabilirsiniz.
Test sertifikası kullanarak imzalama
Test sertifikaları bir Sertifika Yetkilisi (CA) tarafından imzalanmaz ve yalnızca test amacıyla kullanılmalıdır. Test sertifikaları hakkında ayrıntılı bilgi için bkz . Sertifika yetkililerinin kullanılması kullanıcılara nasıl yardımcı olur?
İmzalama sayfasında ClickOnce bildirimlerini imzala onay kutusunu seçin.
Test için yeni bir sertifika oluşturmak için Test Sertifikası Oluştur düğmesine tıklayın.
Test Sertifikası Oluştur iletişim kutusunda, test sertifikanızın güvenliğini sağlamaya yardımcı olacak bir parola girin.
Not
.NET 2.0'ı hedeflemediğiniz sürece İmza Algoritması olarak sha256RSA'yı seçtiğinizden emin olun.
İmzasız bildirimler oluşturma
ClickOnce bildirimlerini imzalamak, tabanlı uygulamalar için .exe
isteğe bağlıdır. Aşağıdaki yordamlarda imzasız ClickOnce bildirimlerinin nasıl oluşturulacağı gösterilmektedir.
Önemli
İmzasız bildirimler uygulamanızın geliştirilmesini ve testini basitleştirebilir. Ancak imzasız bildirimler üretim ortamında önemli güvenlik riskleri getirir. Yalnızca ClickOnce uygulamanız internetten veya diğer kötü amaçlı kod kaynaklarından tamamen yalıtılmış bir intranet içindeki bilgisayarlarda çalışıyorsa imzasız bildirimleri kullanmayı göz önünde bulundurun.
Varsayılan olarak, bir veya daha fazla dosya özel olarak oluşturulan karmanın dışında tutulmadığı sürece ClickOnce otomatik olarak imzalı bildirimler oluşturur. Başka bir deyişle, ClickOnce bildirimlerini imzala onay kutusu temizlenmiş olsa bile tüm dosyalar karmaya dahil edilirse uygulamanın yayımlanması imzalı bildirimlerle sonuçlanır.
İmzasız bildirimler oluşturmak ve oluşturulan karmaya tüm dosyaları dahil etmek için
Karma içindeki tüm dosyaları içeren imzasız bildirimler oluşturmak için, önce uygulamayı imzalı bildirimlerle birlikte yayımlamanız gerekir. Bu nedenle, önce önceki yordamlardan birini izleyerek ClickOnce bildirimlerini imzalayın ve ardından uygulamayı yayımlayın.
İmzalama sekmesinde ClickOnce bildirimlerini imzala onay kutusunu temizleyin.
Yayımla sekmesinde, uygulamanızın yalnızca bir sürümünün kullanılabilir olması için yayımlama sürümünü sıfırlayın. Her yayımlamada sürümü otomatik olarak artır onay kutusunu temizleyin. Varsayılan olarak, Visual Studio bir uygulamayı her yayımladığınızda yayımlama sürümünün düzeltme numarasını otomatik olarak artırır. Daha fazla bilgi için bkz . Nasıl yapılır: ClickOnce yayımlama sürümünü ayarlama.
Uygulamayı yayımlayın. Visual Studio, uygulamanın sunucudaki mevcut uygulamadan farklı bir anahtarla imzalandığını söyler ve üzerine yazmak isteyip istemediğinizi sorar. Evet'i seçin.
İmzasız bildirimler oluşturmak ve oluşturulan karmadan bir veya daha fazla dosyayı dışlamak için
İmzalama sayfasında ClickOnce bildirimlerini imzala onay kutusunu temizleyin.
Yayımla sekmesinde Uygulama Dosyaları düğmesini seçerek Uygulama Dosyaları iletişim kutusunu açın ve oluşturulan karmanın dışında tutmak istediğiniz dosyalar için Karma'yı Dışla olarak ayarlayın.
Not
Bir dosyayı karmanın dışında bırakmak, ClickOnce'ı bildirimlerin otomatik olarak imzalanmasını devre dışı bırakacak şekilde yapılandırır, bu nedenle önce önceki yordamda gösterildiği gibi imzalı bildirimlerle yayımlamanız gerekmez.
Uygulamayı yayımlayın.