ClickOnce ve Authenticode
Authenticode, uygulamanın yayımcı özgünlüğünü doğrulayan dijital sertifikalar ile uygulama kodu imzalamak için endüstri standardı şifreleme kullanan bir Microsoft teknolojisidir. ClickOnce, uygulama dağıtımı için Authenticode kullanarak Truva atı riskini azaltır. Truva atı bir virüs veya kötü amaçlı üçüncü tarafın kurulu olan güvenilir bir kaynaktan gelmiş yasal bir program gibi sunduğu zararlı bir programdır. ClickOnce dağıtımlarını dijital bir sertifika ile imzalamak, değişmemiş derlemeleri ve dosyaları doğrulamak için isteğe bağlı bir adımdır.
Aşağıdaki bölümlerde Authenticode içinde kullanılan dijital sertifika türleri, Sertifika Yetkililerini (CAs) kullanarak sertifikaların nasıl yüklendiği, sertifikalarda zaman damgalamanın rolü ve sertifikalar için kullanılabilir depolama yöntemleri tanımlanır.
Authenticode ve Kod İmzalaması
Dijital sertifika, sertifikanın verildiği yayımcıyı ve sertifakayı veren birimi tanımlayıp meta veriler ile birlikte şifrelenmiş ortak/özel bir anahtar çiftini içeren bir dosyadır.
Authenticode sertifikalarının çeşitli türleri vardır. Her biri için farklı imzalama türlerini yapılandırılır. ClickOnce uygulamaları için, kod imzalamayı sağlayan geçerli bir Authenticode sertifikanız olmalıdır. Bir ClickOnce uygulamasını dijital e-posta sertifikası gibi başka tür bir sertifika ile imzalamayı denerseniz, uygulama çalışmaz. Daha fazla bilgi için bkz: kod imzalama için giriş.
Kod imzalama için üç yoldan biriyle sertifika elde edebilirsiniz:
Bir sertifika satıcısından satın alın.
Organizasyonunuzda dijital sertifikalar oluşturmadan sorumlu gruptan bir sertifika alın.
Windows Software Development Kit (SDK) ile gelen MakeCert.exe'yi kullanarak kendi sertifikanızı oluşturun.
Sertifika Yetkililerini Kullanmak Kullanıcılara Nasıl Yardım Eder
MakeCert.exe yardımcı programı kullanılarak oluşturulan bir sertifika genellikle self-cert veya test cert olarak adlandırılır. Bu tür bir sertifika, genel olarak .NET Framework'te çalışan .snk dosyası gibi çalışır. Yalnızca ortak/özel bir şifreleme anahtarından oluşur ve yayımcı hakkında doğrulanabilen bilgi içermez. İntranet üzerinden ClickOnce uygulamalarını yüksek izin düzeyinde dağıtmak için self-cert'ler kullanabilirsiniz. Ancak, bu uygulamalar istemci bilgisayar üzerinde çalıştığında, ClickOnce bunları Bilinmeyen Yayımcı'dan geliyormuş gibi tanımlar. Varsayılan değer olarak, İnternet üzerinde dağıtılan ve self-cert'ler ile imzalanmış ClickOnce uygulamaları Güvenilir Uygulama Dağıtımı'ndan faydalanamaz.
Bunun tersine, sertifika satıcısı gibi bir CA'den veya kuruluşunuz içindeki bir departmandan sertifika alırsanız, bu sertifika kullanıcılar için daha fazla güvenlik sağlar. İmzalanmış yazılımın yayımcısını tanımlamasının yanında, bu kimliği onu imzalayan CA ile kontrol ederek doğrular. CA baş yetkili değilse, Authenticode CA'in sertifikaları vermek üzere yetkilendirilmiş olduğunu doğrulamak için baş yetkiliye kadar geri gidecektir. Daha fazla güvenlik için mümkün olduğunda CA tarafından verilen bir sertifika kullanmalısınız.
Self-cert oluşturma üzerine daha fazla bilgi için, bkz. MakeCert.exe (sertifika oluşturma aracı).
Zaman Damgaları
ClickOnce uygulamalarını imzalamak için kullanılan sertifikaların süresi genellikle 12 ay gibi belirli bir zamandan sonra dolar. Uygulamaları sürekli yeni sertifikalarla imzalama gereğini kaldırmak üzere, ClickOnce zaman damgası desteği verir. Uygulama bir zaman damgası ile imzalandığında, süresinin dolmasının ardından bile sertifika kabul edilmeye devam edecek ve sağlanan zaman damgasının geçerliliği sürecektir. Bu, süresi dolan sertikalara sahip ClickOnce uygulamalarının indirilmesine ve çalışmasına, geçerli zaman damgaları varsa izin verir. Süresi dolmuş sertikası olan yüklenmiş uygulamaların güncelleştirmeleri indirip kurmasını da sağlar.
Uygulama sunucusuna zaman damgası eklemek için, kullanılabilir bir zaman damgası sunucusu gereklidir. Zaman damgası sunucusu seçme hakkında daha fazla bilgi için, bkz. Nasıl yapılır: uygulama ve dağıtım listelerini imzalamak.
Süresi Dolan Sertikaları Güncelleştirme
.NET Framework'ün önceki versiyonlarında, süresi dolmuş bir sertifikası olan uygulamayı güncelleştirme, uygulamanın çalışmasının durmasına sebep olabilir. Bu sorunu gidermek için aşağıdaki yöntemlerden birini kullanın:
.NET Framework sürümünü 2.0 SP1'e, Windows XP üzerinde sonraki sürüme, 3.5 sürümüne veya Windows Vista üzerinde sonraki sürüme güncelleştirin.
Uygulamayı kaldırın ve yeni sürümü geçerli bir sertifika ile yeniden yükleyin.
Sertifika güncelleştirecek bir komut satırı derlemesi oluşturun. Bu işlem hakkında adım adım bilgiler bulunabilir Microsoft Destek makalesi 925521.
Sertifikaları Depolama
- Sertifikaları dosya sisteminizde .pfx dosyası olarak veya doğrudan bir anahtar kapsayıcısı içinde depolayabilirsiniz. Windows etki alanı içindeki bir kullanıcı çok sayıda anahtar kapsayıcısına sahip olabilir. .pfx dosyasına kaydedilmeli şeklinde belirtmediyseniz, varsayılan olarak MakeCert.exe sertifikaları kişisel anahtar kapsayıcınızda depolayacaktır. ClickOnce dağıtımı oluşturmak için Windows SDK araçları olan Mage.exe ve MageUI.exe, sertifikaları bu yöntemlerden biriyle depolamanızı sağlar.
Ayrıca bkz.
Başvuru
Mage.exe (bildirim oluşturma ve düzenleme aracı)
Kavramlar
ClickOnce Güvenliği ve Dağıtımı