Zabezpieczenia dostępu kodu dla aplikacji ClickOnce
Aplikacje ClickOnce są oparte na programie .NET Framework i podlegają ograniczeniom zabezpieczeń dostępu do kodu. Z tego powodu ważne jest, aby zrozumieć implikacje zabezpieczeń dostępu do kodu i odpowiednio napisać aplikacje ClickOnce.
Zabezpieczenia dostępu do kodu to mechanizm w programie .NET Framework, który pomaga ograniczyć dostęp do chronionych zasobów i operacji. Należy skonfigurować uprawnienia zabezpieczeń dostępu do kodu dla aplikacji ClickOnce tak, aby korzystała ze strefy odpowiedniej dla lokalizacji instalatora aplikacji. W większości przypadków można wybrać strefę internetową dla ograniczonego zestawu uprawnień lub strefy Lokalny intranet w celu uzyskania większego zestawu uprawnień.
Uwaga
W technologii ClickOnce dla platform .NET Core i .NET 5 lub nowszych ta funkcja nie jest obsługiwana. Aby uzyskać więcej informacji, zobacz ClickOnce dla platformy .NET.
Domyślne zabezpieczenia dostępu do kodu ClickOnce
Domyślnie aplikacja ClickOnce otrzymuje uprawnienia Pełne zaufanie po zainstalowaniu lub uruchomieniu na komputerze klienckim.
Aplikacja, która ma uprawnienia Pełne zaufanie, ma nieograniczony dostęp do zasobów, takich jak system plików i rejestr. Potencjalnie umożliwia to wykorzystanie aplikacji (i systemu użytkownika końcowego) przez złośliwy kod.
Gdy aplikacja wymaga uprawnień Pełne zaufanie, użytkownik końcowy może zostać poproszony o przyznanie uprawnień aplikacji. Oznacza to, że aplikacja nie zapewnia naprawdę środowiska ClickOnce, a monit może być potencjalnie mylący dla mniej doświadczonych użytkowników.
Uwaga
Podczas instalowania aplikacji z nośnika wymiennego, takiego jak dysk CD-ROM, użytkownik nie jest monitowany. Ponadto administrator sieci może skonfigurować zasady sieciowe, aby użytkownicy nie byli monitowani podczas instalowania aplikacji z zaufanego źródła. Aby uzyskać więcej informacji, zobacz Omówienie wdrażania zaufanych aplikacji.
Aby ograniczyć uprawnienia aplikacji ClickOnce, możesz zmodyfikować uprawnienia zabezpieczeń dostępu do kodu dla aplikacji, aby zażądać strefy, która najlepiej pasuje do uprawnień wymaganych przez aplikację. W większości przypadków można wybrać strefę, z której aplikacja jest wdrażana. Jeśli na przykład aplikacja jest aplikacją dla przedsiębiorstw, możesz użyć strefy Lokalny intranet . Jeśli aplikacja jest aplikacją internetową, możesz użyć strefy internetowej .
Konfigurowanie uprawnień zabezpieczeń
Zawsze należy skonfigurować aplikację ClickOnce, aby zażądała odpowiedniej strefy, aby ograniczyć uprawnienia zabezpieczeń dostępu do kodu. Uprawnienia zabezpieczeń można skonfigurować na stronie Zabezpieczenia Projektant projektu.
Strona Zabezpieczenia w Projektant project zawiera pole wyboru Włącz Ustawienia zabezpieczeń ClickOnce. Po wybraniu tego pola wyboru żądania uprawnień zabezpieczeń są dodawane do manifestu wdrożenia aplikacji. W czasie instalacji użytkownik zostanie poproszony o udzielenie uprawnień, jeśli żądane uprawnienia przekraczają domyślne uprawnienia dla strefy, z której jest wdrażana aplikacja. Aby uzyskać więcej informacji, zobacz How to: Enable ClickOnce security settings (Instrukcje: włączanie ustawień zabezpieczeń technologii ClickOnce).
Aplikacje wdrożone z różnych lokalizacji mają różne poziomy uprawnień bez monitowania. Na przykład gdy aplikacja jest wdrażana z Internetu, otrzymuje bardzo restrykcyjny zestaw uprawnień. Po zainstalowaniu z lokalnego intranetu otrzymuje więcej uprawnień, a po zainstalowaniu z dysku CD-ROM otrzymuje uprawnienia Pełna relacja zaufania.
Jako punkt wyjścia do konfigurowania uprawnień możesz wybrać strefę zabezpieczeń z listy Strefa na stronie Zabezpieczenia . Jeśli aplikacja będzie potencjalnie wdrażana z więcej niż jednej strefy, wybierz strefę z najmniejszymi uprawnieniami. Aby uzyskać więcej informacji, zobacz How to: Set a security zone for a ClickOnce application (Instrukcje: ustawianie strefy zabezpieczeń dla aplikacji ClickOnce).
Właściwości, które można ustawić, różnią się w zależności od zestawu uprawnień; nie wszystkie zestawy uprawnień mają konfigurowalne właściwości. Aby uzyskać więcej informacji na temat pełnej listy uprawnień, których aplikacja może zażądać, zobacz System.Security.Permissions. Aby uzyskać więcej informacji na temat ustawiania uprawnień dla strefy niestandardowej, zobacz Jak ustawić uprawnienia niestandardowe dla aplikacji ClickOnce.
Debugowanie aplikacji z ograniczonymi uprawnieniami
Jako deweloper najprawdopodobniej uruchomisz komputer dewelopera z uprawnieniami Pełnego zaufania. W związku z tym nie widzisz tych samych wyjątków zabezpieczeń podczas debugowania aplikacji, którą użytkownicy mogą zobaczyć po uruchomieniu jej z ograniczonymi uprawnieniami.
Aby przechwycić te wyjątki, należy debugować aplikację z tymi samymi uprawnieniami co użytkownik końcowy. Debugowanie z ograniczonymi uprawnieniami można włączyć na stronie Zabezpieczenia Projektant projektu.
Podczas debugowania aplikacji z ograniczonymi uprawnieniami wyjątki będą zgłaszane dla wszystkich żądań zabezpieczeń kodu, które nie zostały włączone na stronie Zabezpieczenia . Zostanie wyświetlony pomocnik wyjątku, podając sugestie dotyczące sposobu modyfikowania kodu, aby zapobiec wystąpieniu wyjątku.
Ponadto podczas pisania kodu funkcja IntelliSense w Edytorze kodu wyłączy wszystkie elementy członkowskie, które nie są uwzględnione w skonfigurowanych uprawnieniach zabezpieczeń.
Aby uzyskać więcej informacji, zobacz How to: Debug a ClickOnce Application with Restricted Permissions (Instrukcje: debugowanie aplikacji ClickOnce z ograniczonymi uprawnieniami).
Uprawnienia zabezpieczeń dla aplikacji hostowanych w przeglądarce
Program Visual Studio udostępnia następujące typy projektów dla aplikacji Windows Presentation Foundation (WPF):
Aplikacja WPF systemu Windows
Aplikacja przeglądarki internetowej WPF
Biblioteka kontrolek niestandardowych WPF
Biblioteka usług WPF
Spośród tych typów projektów tylko aplikacje przeglądarki internetowej WPF są hostowane w przeglądarce sieci Web i dlatego wymagają specjalnych ustawień wdrażania i zabezpieczeń. Domyślne ustawienia zabezpieczeń dla tych aplikacji są następujące:
Włączanie Ustawienia zabezpieczeń technologii ClickOnce
Jest to aplikacja częściowo zaufania
Strefa internetowa (z domyślnym zestawem uprawnień dla wybranych aplikacji przeglądarki internetowej WPF)
W oknie dialogowym Advanced Security Ustawienia pole wyboru Debuguj tę aplikację z wybranym zestawem uprawnień jest zaznaczone i wyłączone. Dzieje się tak, ponieważ nie można wyłączyć debugowania w strefie dla aplikacji hostowanych w przeglądarce.
Powiązana zawartość
- Zabezpieczanie aplikacji ClickOnce
- Włączanie i konfigurowanie ustawień zabezpieczeń technologii ClickOnce
- Ustawianie strefy zabezpieczeń dla aplikacji ClickOnce
- Ustawianie uprawnień niestandardowych dla aplikacji ClickOnce
- Debugowanie aplikacji ClickOnce z ograniczonymi uprawnieniami
- Omówienie wdrażania zaufanych aplikacji
- Strona zabezpieczeń, Projektant projektu