RegistryPermission Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przestroga
Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}
Kontroluje możliwość uzyskiwania dostępu do zmiennych rejestru. Klasa ta nie może być dziedziczona.
public ref class RegistryPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
public sealed class RegistryPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class RegistryPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class RegistryPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class RegistryPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
type RegistryPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type RegistryPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
[<System.Serializable>]
type RegistryPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type RegistryPermission = class
inherit CodeAccessPermission
interface IUnrestrictedPermission
Public NotInheritable Class RegistryPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
- Dziedziczenie
- Atrybuty
- Implementuje
Uwagi
RegistryPermission Opisuje chronione operacje na zmiennych rejestru. Zmienne rejestru nie powinny być przechowywane w lokalizacjach pamięci, w których kod nie RegistryPermission może uzyskiwać do nich dostępu. Jeśli obiekt rejestru jest przekazywany do niezaufanego obiektu wywołującego, może być niewłaściwie używany.
Dozwolone typy dostępu do rejestru są definiowane przez program RegistryPermissionAccess. Jeśli wymagany jest więcej niż jeden typ dostępu, można je połączyć przy użyciu operacji bitowej OR, jak pokazano w poniższym przykładzie kodu.
Uprawnienie rejestru jest definiowane pod względem kanonicznych ścieżek bezwzględnych; zawsze należy przeprowadzać kontrole z nazwami ścieżek kanonicznych. Dostęp do klucza oznacza dostęp do wszystkich wartości, które zawiera i wszystkie zmienne w nim zawarte.
Uwaga
W wersjach .NET Framework przed .NET Framework 4 można użyć CodeAccessPermission.Deny metody , aby zapobiec niezamierzonemu dostępowi do zasobów systemowych przez zaufany kod. Deny jest teraz przestarzałe, a dostęp do zasobów jest teraz określany wyłącznie przez przyznany zestaw uprawnień dla zestawu. Aby ograniczyć dostęp do plików, należy uruchomić częściowo zaufany kod w piaskownicy i przypisać mu uprawnienia tylko do zasobów, do których kod może uzyskiwać dostęp. Aby uzyskać informacje na temat uruchamiania aplikacji w piaskownicy, zobacz Instrukcje: uruchamianie częściowo zaufanego kodu w piaskownicy.
Konstruktory
| RegistryPermission(PermissionState) |
Inicjuje RegistryPermission nowe wystąpienie klasy z w pełni ograniczonym lub nieograniczonym uprawnieniem określonym. |
| RegistryPermission(RegistryPermissionAccess, AccessControlActions, String) |
Inicjuje RegistryPermission nowe wystąpienie klasy z określonym dostępem do określonych zmiennych rejestru i określonymi prawami dostępu do informacji kontroli rejestru. |
| RegistryPermission(RegistryPermissionAccess, String) |
Inicjuje RegistryPermission nowe wystąpienie klasy z określonym dostępem do określonych zmiennych rejestru. |
Metody
| AddPathList(RegistryPermissionAccess, AccessControlActions, String) |
Dodaje dostęp do określonych zmiennych rejestru do istniejącego stanu uprawnień, określając akcje dostępu do uprawnień rejestru i kontroli dostępu. |
| AddPathList(RegistryPermissionAccess, String) |
Dodaje dostęp do określonych zmiennych rejestru do istniejącego stanu uprawnienia. |
| Assert() |
Deklaruje, że kod wywołujący może uzyskać dostęp do zasobu chronionego przez żądanie uprawnień za pośrednictwem kodu, który wywołuje tę metodę, nawet jeśli obiekty wywołujące wyższe w stosie nie otrzymały uprawnień dostępu do zasobu. Za pomocą polecenia Assert() można tworzyć problemy z zabezpieczeniami. (Odziedziczone po CodeAccessPermission) |
| Copy() |
Tworzy i zwraca identyczną kopię bieżącego uprawnienia. |
| Demand() |
Wymusza w SecurityException czasie wykonywania, jeśli wszystkie elementy wywołujące wyższe w stosie wywołań nie otrzymały uprawnienia określonego przez bieżące wystąpienie. (Odziedziczone po CodeAccessPermission) |
| Deny() |
Nieaktualne.
Nieaktualne.
Zapobiega wywoływaniom wyższym w stosie wywołań przy użyciu kodu, który wywołuje tę metodę w celu uzyskania dostępu do zasobu określonego przez bieżące wystąpienie. (Odziedziczone po CodeAccessPermission) |
| Equals(Object) |
Określa, czy określony CodeAccessPermission obiekt jest równy bieżącemu CodeAccessPermission. (Odziedziczone po CodeAccessPermission) |
| FromXml(SecurityElement) |
Rekonstruuje uprawnienie o określonym stanie z kodowania XML. |
| GetHashCode() |
Pobiera kod skrótu CodeAccessPermission dla obiektu, który jest odpowiedni do użycia w algorytmach tworzenia skrótów i strukturach danych, takich jak tabela skrótów. (Odziedziczone po CodeAccessPermission) |
| GetPathList(RegistryPermissionAccess) |
Pobiera ścieżki dla wszystkich zmiennych rejestru z określoną wartością RegistryPermissionAccess. |
| GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
| Intersect(IPermission) |
Tworzy i zwraca uprawnienie, które jest skrzyżowaniem bieżącego uprawnienia i określonego uprawnienia. |
| IsSubsetOf(IPermission) |
Określa, czy bieżące uprawnienie jest podzbiorem określonego uprawnienia. |
| IsUnrestricted() |
Zwraca wartość wskazującą, czy bieżące uprawnienie jest nieograniczone. |
| MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
| PermitOnly() |
Zapobiega wywoływaniom wyższym w stosie wywołań przy użyciu kodu, który wywołuje tę metodę w celu uzyskania dostępu do wszystkich zasobów z wyjątkiem zasobu określonego przez bieżące wystąpienie. (Odziedziczone po CodeAccessPermission) |
| SetPathList(RegistryPermissionAccess, String) |
Ustawia nowy dostęp dla określonych nazw zmiennych rejestru do istniejącego stanu uprawnienia. |
| ToString() |
Tworzy i zwraca ciąg reprezentujący bieżący obiekt uprawnień. (Odziedziczone po CodeAccessPermission) |
| ToXml() |
Tworzy kodowanie XML uprawnienia i jego bieżącego stanu. |
| Union(IPermission) |
Tworzy uprawnienie, które jest związkiem bieżącego uprawnienia i określonego uprawnienia. |
Jawne implementacje interfejsu
| IPermission.Demand() |
Zgłasza błąd SecurityException w czasie wykonywania, jeśli wymaganie dotyczące zabezpieczeń nie zostanie spełnione. (Odziedziczone po CodeAccessPermission) |
| IStackWalk.Assert() |
Potwierdza, że kod wywołujący może uzyskać dostęp do zasobu zidentyfikowany przez bieżący obiekt uprawnień, nawet jeśli obiekty wywołujące wyższe w stosie nie otrzymały uprawnień dostępu do zasobu. (Odziedziczone po CodeAccessPermission) |
| IStackWalk.Demand() |
Określa w czasie wykonywania, czy wszystkie obiekty wywołujące w stosie wywołań otrzymały uprawnienia określone przez bieżący obiekt uprawnień. (Odziedziczone po CodeAccessPermission) |
| IStackWalk.Deny() |
Powoduje, że każdy Demand() dla bieżącego obiektu, który przechodzi przez kod wywołujący, kończy się niepowodzeniem. (Odziedziczone po CodeAccessPermission) |
| IStackWalk.PermitOnly() |
Powoduje, że każdy Demand() dla wszystkich obiektów z wyjątkiem bieżącego, który przechodzi przez kod wywołujący kończy się niepowodzeniem, nawet jeśli kod wyższy w stosie wywołań otrzymał uprawnienie dostępu do innych zasobów. (Odziedziczone po CodeAccessPermission) |