CodeAccessPermission Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert die zugrunde liegende Struktur aller Codezugriffsberechtigungen.
public ref class CodeAccessPermission abstract : System::Security::IPermission, System::Security::IStackWalk
[System.Serializable]
public abstract class CodeAccessPermission : System.Security.IPermission, System.Security.IStackWalk
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class CodeAccessPermission : System.Security.IPermission, System.Security.IStackWalk
[<System.Serializable>]
type CodeAccessPermission = class
interface IPermission
interface ISecurityEncodable
interface IStackWalk
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CodeAccessPermission = class
interface IPermission
interface ISecurityEncodable
interface IStackWalk
Public MustInherit Class CodeAccessPermission
Implements IPermission, IStackWalk
- Vererbung
-
CodeAccessPermission
- Abgeleitet
- Attribute
- Implementiert
Hinweise
Vorsicht
Code Access Security (CAS) ist in allen Versionen von .NET Framework und .NET veraltet. Aktuelle Versionen von .NET berücksichtigen keine CAS-Anmerkungen und erzeugen Fehler, wenn CAS-bezogene APIs verwendet werden. Entwickler*innen sollten alternative Mittel zum Ausführen von Sicherheitsaufgaben suchen.
Codezugriffsberechtigungen verwenden einen Stapelexemplar, um sicherzustellen, dass allen Aufrufen des Codes eine Berechtigung erteilt wurde. Wenn ein Berechtigungsobjekt lautet null, wird es mit einem Berechtigungsobjekt mit dem Status PermissionState.Noneidentisch behandelt.
Der Aufrufstapel wird in der Regel als aufwachsend dargestellt, sodass Die Methoden in den Aufrufstapelmethoden weiter unten im Aufrufstapel liegen.
Abkömmlinge der CodeAccessPermission Klasse müssen vollständiges Vertrauen erhalten, um korrekt zu funktionieren, da diese Berechtigungen die Sicherheitsinfrastruktur erweitern. Um zu ermitteln, dass die Vererbungen vollständig vertrauenswürdig sind, CodeAccessPermission stellt ein Problem für ControlEvidencetrue = InheritanceDemand und .ControlPolicy = true
Hinweise für Ausführende
Wenn Sie von CodeAccessPermissionerben, müssen Sie auch die IUnrestrictedPermission Schnittstelle implementieren.
Die folgenden CodeAccessPermission Member müssen überschrieben werden: Copy(), , Intersect(IPermission), IsSubsetOf(IPermission), , ToXml(), FromXml(SecurityElement)und Union(IPermission).
Sie müssen auch einen Konstruktor definieren, der als PermissionState einziger Parameter verwendet wird.
Sie müssen das SerializableAttribute Attribut auf eine Klasse anwenden, von CodeAccessPermissionder geerbt wird.
Konstruktoren
| Name | Beschreibung |
|---|---|
| CodeAccessPermission() |
Initialisiert eine neue Instanz der CodeAccessPermission-Klasse. |
Methoden
| Name | Beschreibung |
|---|---|
| Assert() |
Deklariert, dass der aufrufende Code über den Code, der diese Methode aufruft, auf die Ressource zugreifen kann, auch wenn Aufrufern im Stapel nicht die Berechtigung zum Zugriff auf die Ressource erteilt wurden. Die Verwendung Assert() kann Sicherheitsprobleme erstellen. |
| Copy() |
Wenn sie von einer abgeleiteten Klasse implementiert wird, wird eine identische Kopie des aktuellen Berechtigungsobjekts erstellt und zurückgegeben. |
| Demand() |
Erzwingt zur Laufzeit, SecurityException wenn allen Anrufern, die höher im Aufrufstapel sind, nicht die von der aktuellen Instanz angegebene Berechtigung erteilt wurde. |
| Deny() |
Veraltet.
Verhindert, dass Aufrufer im Aufrufstapel den Code verwenden, der diese Methode aufruft, um auf die von der aktuellen Instanz angegebene Ressource zuzugreifen. |
| Equals(Object) |
Bestimmt, ob das angegebene CodeAccessPermission Objekt dem aktuellen CodeAccessPermissionentspricht. |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
| FromXml(SecurityElement) |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein Sicherheitsobjekt mit einem angegebenen Zustand aus einer XML-Codierung rekonstruiert. |
| GetHashCode() |
Ruft einen Hashcode für das CodeAccessPermission Objekt ab, das für die Verwendung in Hashingalgorithmen und Datenstrukturen wie einer Hashtabelle geeignet ist. |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| Intersect(IPermission) |
Wenn sie von einer abgeleiteten Klasse implementiert wird, wird eine Berechtigung erstellt und zurückgegeben, die die Schnittmenge der aktuellen Berechtigung und der angegebenen Berechtigung darstellt. |
| IsSubsetOf(IPermission) |
Wenn sie von einer abgeleiteten Klasse implementiert wird, wird bestimmt, ob die aktuelle Berechtigung eine Teilmenge der angegebenen Berechtigung ist. |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| PermitOnly() |
Verhindert, dass Aufrufer im Aufrufstapel den Code verwenden, der diese Methode aufruft, um auf alle Ressourcen zuzugreifen, mit Ausnahme der von der aktuellen Instanz angegebenen Ressource. |
| RevertAll() |
Bewirkt, dass alle vorherigen Außerkraftsetzungen für den aktuellen Frame entfernt und nicht mehr wirksam werden. |
| RevertAssert() |
Assert() Führt dazu, dass der aktuelle Frame entfernt und nicht mehr wirksam wird. |
| RevertDeny() |
Veraltet.
Deny() Führt dazu, dass der aktuelle Frame entfernt und nicht mehr wirksam wird. |
| RevertPermitOnly() |
PermitOnly() Führt dazu, dass der aktuelle Frame entfernt und nicht mehr wirksam wird. |
| ToString() |
Erstellt und gibt eine Zeichenfolgendarstellung des aktuellen Berechtigungsobjekts zurück. |
| ToXml() |
Wenn eine abgeleitete Klasse außer Kraft gesetzt wird, wird eine XML-Codierung des Sicherheitsobjekts und des aktuellen Zustands erstellt. |
| Union(IPermission) |
Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, wird eine Berechtigung erstellt, die die Union der aktuellen Berechtigung und der angegebenen Berechtigung darstellt. |