Aracılığıyla paylaş


ClickOnce Güvenliği ve Dağıtımı

ClickOnce, en alt düzeyde kullanıcı etkileşimi ile yüklenip çalıştırılabilecek kendini güncelleştirebilen ve Windows tabanlı uygulamalar oluşturmanıza izin veren bir dağıtım teknolojisidir. Projelerinizi Visual Basic ve Visual C# ile geliştirdiyseniz; Visual Studio, ClickOnce teknolojisi ile dağıtılan uygulamaların yayımlanması ve güncelleştirilmesi için tam destek sağlar. Visual C++ uygulamaları dağıtımı hakkında bilgi için, bkz. Visual C++ Uygulamaları için ClickOnce Dağıtımı.

ClickOnce dağıtımı, dağıtımla ilgili üç önemli sorunun üstesinden gelir:

  • Uygulamaları güncelleştirmede karşılaşılan zorluklar: Microsoft Windows Installer dağıtım ile uygulama güncelleştirildiğinde kullanıcı bir güncelleştirme bir msp dosyası yükleyebilir ve yüklü ürün için geçerlidir; ile ClickOnce , dağıtım, sağlayabilir güncelleştirmeleri otomatik olarak. Yalnızca uygulamanın değişen parçaları indirilir ve sonra tamamı için güncelleştirilmiş uygulama yan yana bir klasörden yeniden yüklenir.

  • Kullanıcının bilgisayarına etkisi: Windows Installer dağıtım ile uygulamalar genellikle sürüm çakışma olasılığını ile paylaşılan bileşenleri kullanır; ile ClickOnce dağıtım, her uygulamanın kendi kendini içerir ve diğer uygulamalarla engel olamaz.

  • Güvenlik izinleri: Windows Installer dağıtım, yönetici izinleri gerektirir ve yalnızca sınırlı kullanıcı yüklenmesine de izin verir; ClickOnceDağıtım, yönetici olmayan kullanıcıların yüklemelerine olanak sağlar ve yalnızca uygulama için bu kod erişimi güvenlik izinleri verir.

Geçmişte bu konular geliştiricilerin zengin bir kullanıcı arayüzünü yükleme kolaylığı için feda edip, Windows tabanlı uygulamalar yerine Web uygulamaları oluşturmaya karar vermelerine neden oluyordu. ClickOnce kullanarak dağıtılan uygulamaları kullanarak, her iki teknolojinin en iyisine sahip olabilirsiniz.

Bir ClickOnce Uygulaması nedir?

Bir ClickOnce uygulaması, ClickOnce teknolojisi kullanılarak yayımlanan herhangi bir Windows Presentation Foundation (.xbap), Windows Forms (.exe), konsol uygulaması veya Office(.dll) çözümüdür. Yayımlayabilmek için bir ClickOnce üç farklı şekilde uygulama: bir Web sayfası, bir ağ paylaşımına veya cd-rom gibi medya. ClickOnce uygulaması son kullanıcının bilgisayarı üzerinde yüklenebilir ve yerel olarak bilgisiyar çevrimdışı olduğunda bile çalıştırılabilir. Bunun yanında, uygulama son kullanıcının bilgisayarına kalıcı olarak hiçbir şey yüklemeden sadece çevrimiçi modunda çalıştırılabilir. Daha fazla bilgi için bkz. Bir ClickOnce Dağıtım Stratejisi Seçme.

ClickOnce uygulamaları kendini güncelleştirebilir; erişilebilir yeni sürümleri denetler ve otomatik olarak güncelleştirilmiş dosyaları değiştirir. Geliştirici güncelleştirme davranışını belirleyebilir; ağ yöneticisi güncelleştirme stratejilerini de denetleyebilir. Örneğin, bir güncelleştirmeyi 'zorunlu' olarak işaretleme. Güncelleştirmeler son kullanıcı veya yönetici tarafından önceki bir sürüme de çevrilebilir. Daha fazla bilgi için bkz. Bir ClickOnce Güncelleştirme Stratejisi Seçme.

ClickOnce uygulamasını yükleme veya çalıştırma, ClickOnce uygulamaları yalıtılmış olduğundan varolan uygulamaları kesemez. ClickOnce uygulamaları bağımsız birimlerdir; her ClickOnce uygulaması güvenli bir kullanıcı ve bir uygulama önbelliğine yüklenir ve bunlardan çalıştırılır. ClickOnce uygulamaları İnternet veya İntranet güvenlik bölgelerinde çalışır. Gerekli ise, uygulama yükseltilmiş güvenlik izinlerini isteyebilir. Daha fazla bilgi için bkz. ClickOnce Uygulamaları Güvenliğini Sağlama.

ClickOnce Güvenliği Nasıl Çalışır

Çekirdek ClickOnce güvenliği sertifika, kod erişim güvenliği ilkeleri ve ClickOnce güven istemi tabanlıdır.

t71a733d.collapse_all(tr-tr,VS.110).gifSertifikalar

Authenticode sertifikaları uygulamanın yayımcı özgünlüğünü doğrulamak için kullanılır. ClickOnce, uygulama dağıtımı için Authenticode kullanarak zararlı bir programın kurulu olan güvenilir bir kaynaktan gelerek kendisini yasal bir program olarak tanıtmasını engellemesine yardım eder. İsteğe bağlı olarak, sertifikalar dosyaların üzerinde oynanmadığını ispatlamak için uygulama ve dağıtım bildirimlerini imzalamak için de kullanılabilir. Daha fazla bilgi için bkz. ClickOnce ve Authenticode. Sertifikalar, sunucu bilgisayarların güvenilen yayımcıların listesine sahip olması için yapılandırılmasında da kullanılabilir. Uygulama güvenilen bir yayımcıdan gelirse, hiçbir kullanıcı etkileşimi olmadan kurulabilir. Daha fazla bilgi için bkz. Güvenilir Uygulama Dağıtımına Genel Bakış.

t71a733d.collapse_all(tr-tr,VS.110).gifKod Erişimi Güvenliği

Kod erişimi güvenliği korumalı kaynaklara sahip olan koda erişimi sınırlamanıza yardımcı olur. Çoğu durumda, izinleri sınırlamak için İnternet veya yerel İntranet bölgelerini seçersiniz. Proje Tasarımcısı'nın Güvenlik sayfasını uygulama için uygun bölgeyi istemek üzere kullanın. Son kullanıcı deneyimi yaşamak için uygulamanızda sınırlı izinler ile de hata ayıklayabilirsiniz. Daha fazla bilgi için bkz. ClickOnce Uygulamaları İçin Kod Erişimi Güvenliği.

t71a733d.collapse_all(tr-tr,VS.110).gifClickOnce Güven İstemi

Uygulama bölgenin izin verdiğinden daha fazla izin isterse, son kullanıcı bir güven kararı alması için uyarılabilir. Son kullanıcı, Windows Forms uygulamaları, Windows Presentation Foundation uygulamaları, konsol uygulamaları, XAML tarayıcı uygulamaları ve Office çözümleri gibi ClickOnce uygulamalarının çalıştırmak için güvenilir olup olmadığına karar verebilir. Daha fazla bilgi için bkz. Nasıl yapılır: ClickOnce güven komut istemi davranışı yapılandırmak.

ClickOnce Dağıtımı Nasıl Çalışır

Çekirdek ClickOnce üzerinde iki xml dosya bildirim dosyaları dağıtım mimarisi tabanlı: bir uygulama bildirimi ve bir dağıtım listesi. Dosyalar ClickOnce uygulamalarının nereden yükleneceğini, nasıl ve ne zaman güncelleştirileceğini tanımlamak için kullanılır.

t71a733d.collapse_all(tr-tr,VS.110).gifClickOnce Uygulamalarını Yayımlama

Uygulama bildirimi uygulamayı tanımlar. Bu; derlemeleri, bağımlılıklar ile uygulamayı oluşturan dosyaları, gerekli izinleri ve güncelleştirmelerin bulunacağı konumu içerir. Uygulama geliştiricisi Visual Studio'da Yayımla Sihirbazı veya Windows Software Development Kit (SDK) içinde Bildirim Oluşturma ve Düzenleme Aracı (Mage.exe) kullanarak uygulama bildirimi yazabilir. Daha fazla bilgi için bkz. Nasıl yapılır: Yayımlama Sihirbazı'nı kullanarak bir ClickOnce uygulama yayımlama.

Dağıtım bildirimi uygulamanın nasıl dağıtıldığını açıklar. Bu, uygulama bildiriminin konumunu ve istemcilerin çalıştıracağı uygulamanın sürümünü içerir.

t71a733d.collapse_all(tr-tr,VS.110).gifClickOnce Uygulamalarını Dağıtma

Oluşturulduktan sonra, dağıtım bildirimi dağıtım konumuna kopyalanır. Bu konum bir Web sunucusu, ağ dosya paylaşımı veya CD gibi bir ortam olabilir. Uygulama bildirimi ve tüm uygulama dosyaları dağıtım bildiriminde belirtilen bir dağıtım konumuna da kopyalanır. Bu dağıtım konumu ile aynı olabilir veya farklı bir konum olabilir. Visual Studio'da Yayımla Sihirbazı'ı kullanılarak kopyalama işlemleri otomatik olarak gerçekleştirilir.

t71a733d.collapse_all(tr-tr,VS.110).gifClickOnce Uygulamalarını Yükleme

Uygulama dağıtım konumuna dağıtıldıktan sonra, son kullanıcılar bir klasörde veya bir Web sayfası üzerinde dağıtım bildirimi dosyasını temsil eden simgeyi tıklayarak uygulamayı indirip kurabilirler. Çoğu durumda, son kullanıcıya yüklemeyi onaylaması istenilen basit bir iletişim kutusu gösterilir. Bundan sonra yükleme devam eder ve uygulama ek müdahele olmadan başlatılır. Uygulamanın yükseltilmiş izinlere ihtiyaç duyması veya güvenilir bir sertifika ile imzalanmamış olması durumunda, iletişim kutusu yüklemeye devam etmeden önce kullanıcıdan izinlerin alınmasını da ister. ClickOnce bir kullanıcı için yüklenir ama yönetici ayrıcalıkları gerektiren önkoşullar varsa izin yükseltimesi şart olabilir. Yükseltilmiş izinler hakkında daha fazla bilgi için, bkz. ClickOnce Uygulamaları Güvenliğini Sağlama.

Güvenilir sertifika ile imzalanmış ClickOnce uygulamalarının uyarı olmadan yüklenmesi için, sertifikalar makine veya kuruluş düzeyinde güvenilir olabilir. Güvenilir sertifikalar hakkında daha fazla bilgi için, bkz. Güvenilir Uygulama Dağıtımına Genel Bakış.

Uygulama, kullanıcının Başlat menüsüne ve Denetim Masası'nda Program Ekle veya Kaldır grubuna eklenebilir. Diğer dağıtım teknolojilerinden farklı olarak, Program Files klasörü ile kayıt defterine hiçbir şey eklenmez ve yönetici yetkileri yükleme için gerekmez.

Not

Uygulamanın bir Web uygulaması gibi görünmesi için, Başlat menüsüne ve Program Ekle veya Kaldır grubuna eklenmesini engellemek de mümkündür.Daha fazla bilgi için bkz. Bir ClickOnce Dağıtım Stratejisi Seçme.

t71a733d.collapse_all(tr-tr,VS.110).gifClickOnce Uygulamalarını Güncelleştirme

Uygulama geliştiricileri bir uygulamanın güncelleştirilmiş sürümünü oluşturduğunda, yeni bir uygulama bildirimi oluşturur ve dosyaları bir dağıtım konumuna (genellikle özgün uygulama dağıtımı klasörüne eş bir klasör) kopyalarlar. Yönetici dağıtım bildirimini uygulamanın yeni sürümünün konumunu göstermesi için güncelleştirir.

Not

Visual Studio'da Yayımla Sihirbazı bu adımları gerçekleştirmek için kullanılabilir.

Dağıtım konumuna ek olarak, dağıtım bildirimi de uygulamanın güncelleştirilmiş sürümlerini denetleyebileceği bir güncelleştirme konumu (Web sayfası veya ağ dosya paylaşımı) içerir. ClickOnce Yayımla özellikleri uygulamanın ne zaman ve hangi sıklıkta güncelleştirmeleri denetlemesi gerektiğini belirlemek için kullanılır. Güncelleştirme davranışı dağıtım bildiriminde belirtilebilir veya ClickOnce API'leri aracılığıyla uygulamanın arayüzünde kullanıcı seçenekleri olarak gösterilebilir. Ayrıca, Yayımla özelliği zorunlu güncelleştirmeleri yapmak veya önceki bir sürüme geri çevirmek için kullanılabilir. Daha fazla bilgi için bkz. Bir ClickOnce Güncelleştirme Stratejisi Seçme.

t71a733d.collapse_all(tr-tr,VS.110).gifÜçüncü Taraf Yükleyiciler

ClickOnce yükleyicinizi uygulamanız ile birlikte üçüncü taraf bileşenleri yüklemek üzere yapılandırabilirsiniz. Yeniden dağıtılabilir pakete (.exe veya .msi dosyası) sahip olmalısınız, ayrıca paketi bir dilden bağımsız ürün bildirimi ve bir dile özel paket bildirimi ile tanımlamalısınız. Daha fazla bilgi için bkz. Önyükleyici Paketleri Oluşturma.

ClickOnce Araçları

Aşağıdaki tabloda, uygulama ve uygulama bildirimleri oluşturmak, düzenlemek, imzalamak ve yeniden imzalamak için kullanabileceğiniz araçlar gösterilir.

Araç

Description

Güvenlik sayfası, proje Tasarımcısı

Uygulama ve dağıtım bildirimlerini imzalama.

Sayfası, proje Tasarımcısı Yayımla

Visual Basic ve Visual C# uygulamaları için uygulama ve dağıtım bildirimlerini oluşturur ve düzenler.

Mage.exe (bildirim oluşturma ve düzenleme aracı)

Visual Basic, Visual C# ve Visual C++ uygulamaları için uygulama ve dağıtım bildirimlerini oluşturur ve düzenler.

Uygulama ve dağıtım bildirimlerini imzalar veya yeniden imzalar.

Toplu betiklerden ve komut isteminden çalıştırabilirsiniz.

MageUI.exe (bildirim oluşturma ve düzenleme aracı, grafiksel istemci)

Uygulama ve dağıtım bildirimleri oluşturur ve düzenler.

Uygulama ve dağıtım bildirimlerini imzalar veya yeniden imzalar.

GenerateApplicationManifest görev

Uygulama bildirimi oluşturur.

MSBuild'den çalıştırabilirsiniz. Daha fazla bilgi için bkz. MSBuild başvurusu.

GenerateDeploymentManifest görev

Dağıtım bildirimi oluşturur.

MSBuild'den çalıştırabilirsiniz. Daha fazla bilgi için bkz. MSBuild başvurusu.

SignFile görev

Uygulama ve dağıtım bildirimlerini imzalama.

MSBuild'den çalıştırabilirsiniz. Daha fazla bilgi için bkz. MSBuild başvurusu.

Microsoft.Build.Tasks.Deployment.ManifestUtilities

Uygulama ve dağıtım bildirimlerini oluşturmak için kendi uygulamanızı geliştirin.

Aşağıdaki tabloda belirtilen tarayıcılarda ClickOnce uygulamalarının desteklenmesi için gereken .NET Framework sürümü gösterilir.

Browser

.NET Framework sürümü

Internet Explorer

2.0, 3.0, 3.5, 3.5 SP1, 4

Firefox

2.0 SP1, 3.5 SP1, 4

Ayrıca bkz.

Kavramlar

Windows Vista üzerinde ClickOnce Dağıtımı

Yayımlama ClickOnce uygulamaları

ClickOnce Uygulamaları Güvenliğini Sağlama

ClickOnce ile COM Bileşenleri Dağıtma

Komut Satırından ClickOnce Uygulamalarını Yapılandırma

System.Deployment.Application Kullanan ClickOnce Uygulamalarından Hata Ayıklama