Sdílet prostřednictvím


Zabezpečení přístupnosti kódu pro aplikace ClickOnce

ClickOnce aplikace jsou založené na rozhraní .NET Framework a podléhají omezení zabezpečení přístupnosti kódu. Z tohoto důvodu je důležité pochopení důsledků zabezpečení přístupnosti kódu a odpovídajícího způsobů zápisu aplikace ClickOnce.

Zabezpečení přístupnosti kódu je mechanismus v rozhraní .NET Framework, který pomáhá omezit přístup ke kódu, který má chráněné prostředky a operace. Měli byste nakonfigurovat oprávnění zabezpečení přístupnosti kódu Vaší ClickOnce aplikace pro použití odpovídající oblasti pro umístění instalačního programu aplikace. Ve většině případů můžete zvolit síť Internet pro omezená nastavení oprávnění nebo Místní intranet pro větší oprávnění.

Výchozí Zabezpečení přístupnosti kódu ClickOnce

Ve výchozím nastavení obdrží aplikace ClickOnce oprávnění plné důvěryhodnosti při instalaci nebo spuštění v počítači klienta.

  • Aplikace, která má oprávnění úplné důvěryhodnosti má neomezený přístup k prostředkům, například souborovému systému a registrům. To potenciálně umožňuje zneužítí Vaší aplikace (a systému koncového uživatele) škodlivým kódem.

  • Pokud aplikace vyžaduje plná oprávnění, koncový uživatel může být vyzván k udělení oprávnění aplikaci. To znamená, že aplikace neposkytuje skutečně možnosti ClickOnce a výzva může být potenciálně matoucí pro méně zkušené uživatele.

    Poznámka

    Při instalaci aplikace z vyměnitelných médií, jako je například disk CD-ROM, není uživatel dotazován. Správce sítě může navíc nakonfigurovat zásady síťové bezpečnosti tak, aby uživatelé nebyli vyzýváni při instalaci aplikace z důvěryhodného zdroje. Další informace naleznete v tématu Důvěryhodný přehled nasazení aplikace.

Pro omezení oprávnění ClickOnce aplikací můžete upravit oprávnění zabezpečení přístupnosti kódu Vaší aplikace pro vyžádání zóny, která nejlépe vyhovuje oprávněním vyžadovaných aplikací. Ve většině případů můžete zvolit zónu, ze které bude aplikace nasazena. Například pokud je Vaše aplikace podnikovou aplikací, můžete použít zónu Místního intranetu. Pokud se jedná o internetovou aplikaci, můžete použít zóny sítě Internet.

Konfigurace oprávnění zabezpečení

Vždy byste měli konfigurovat aplikaci ClickOnce pro vyžádání příslušné zóny pro omezení oprávnění zabezpečení přístupnosti kódu. Můžete nakonfigurovat oprávnění zabezpečení na stránce Zabezpečení Návrháře projektu.

Stránka Zabezpečení Návrháře projektu obsahuje zaškrtávací políčko Povolení ClickOnce nastavení zabezpečení. Jestliže je toto zaškrtávací políčko označeno, požadavky na oprávnění zabezpečení jsou přidány do manifestu nasazení aplikace. V průběhu instalace budou uživatelé vyzváni k udělení oprávnění, pokud požadovaná oprávnění překročí výchozí oprávnění pro zónu, z níž je aplikace nasazována. Další informace naleznete v tématu Postupy: Povolení nastavení zabezpečení ClickOnce.

Aplikacím nasazeným z různých míst jsou uděleny různé úrovně oprávnění bez zobrazení výzvy. Například po nasazení aplikace z Internetu, obdrží vysoce omezující sadu oprávnění. Při instalaci z místního intranetu, obdrží vyšší oprávnění a pokud je nainstalována z disku CD-ROM, obdrží úplná oprávnění.

Jako výchozí bod pro konfiguraci oprávnění můžete zvolit zóny zabezpečení ze seznamu Zón na stránce Zabezpečení. Pokud vaše aplikace bude potenciálně nasazována z více než jedné zóny, zvolte zónu s nejnižšími oprávněními. Další informace naleznete v tématu Postupy: Nastavení zóny zabezpečení pro aplikaci ClickOnce.

Vlastnosti, které lze nastavovat se liší podle sady oprávnění; ne všechny sady oprávnění mají konfigurovatelné vlastnosti. Další informace o úplný seznam oprávnění, které aplikace může požadovat naleznete v tématu System.Security.Permissions. Další informace o nastavení oprávnění pro vlastní zóny naleznete v tématu Postupy: Nastavení vlastních oprávnění pro ClickOnce aplikace.

Ladění aplikace, která má omezená oprávnění

Jako vývojáři pravděpodobně používáte vývojový počítač s plnými oprávněními. Proto se Vám nezobrazí stejné výjimky zabezpečení při ladění aplikace, které uživatelé mohou vidět při jejich spuštění s omezenými oprávněními.

Chcete-li zachytit tyto výjimky, je třeba ladit aplikace se stejnými oprávněními jako bude mít koncový uživatel. Ladění s omezenými oprávněními može být povoleno na stránce Zabezpečení Návrháře projektu.

Při ladění aplikace s omezenými oprávněními budou výjimky dosaženy pro všechny požadavky zabezpečení kódu povolené na stránce Zabezpečení. Pomocník vyjímek se zobrazí, aby poskytl návrhy jak upravit kód pro zabránění vyjímek.

Kromě toho technologie IntelliSense v editoru kódu při psaní kódu zakáže funkce, které nejsou zahrnuty v oprávněních zabezpečení, která jste nakonfigurovali.

Další informace naleznete v tématu Postupy: Ladění aplikace ClickOnce s omezenými oprávněními.

Oprávnění zabezpečení pro aplikace spouštěné v prohlížeči

Visual Studio poskytuje následující typy projektů pro aplikace systému WPF (Windows Presentation Foundation):

  • aplikace pro systém WPF Windows

  • Aplikace WPF webového prohlížeče

  • Vlastní WPF knihovna ovládacích prvků

  • Knihovna WPF služeb

Z těchto typů projektů jsou pouze WPF aplikace webového prohlížeče spouštěny ve webovém prohlížeči a proto vyžadují speciální nastavení pro nasazení a zabezpečení. Výchozí nastavení zabezpečení pro tyto aplikace jsou následující:

  • Povolit ClickOnce nastavení zabezpečení

  • Toto je aplikace s částečným oprávněním

  • Zóna Internet (s výchozím nastavením oprávnění pro vybrané WPF aplikace pro webové prohlížeče)

V dialogovém poli Upřesnění nastavení zabezpečení je zaškrtávací políčko Ladit tuto aplikaci s vybraným nastavením oprávnění zaškrtnuto a neaktivní. Důvodem je, že pro webové aplikace nelze vypnout ladění v zóně. Další informace naleznete v tématu Windows Presentation Foundation XAML Browser Applications Overview.

Viz také

Úkoly

Postupy: Povolení nastavení zabezpečení ClickOnce

Postupy: Nastavení zóny zabezpečení pro aplikaci ClickOnce

Postupy: Nastavení vlastních oprávnění pro ClickOnce aplikace

Postupy: Ladění aplikace ClickOnce s omezenými oprávněními

Odkaz

Stránka zabezpečení designer projekt

Koncepty

Zabezpečení aplikací ClickOnce

Důvěryhodný přehled nasazení aplikace