ReflectionPermission Klasse

Definition

Steuert den Zugriff auf nicht öffentliche Typen und Member über die System.Reflection-APIs. Controls access to non-public types and members through the System.Reflection APIs. Steuert einige Funktionen der System.Reflection.Emit APIs.Controls some features of the System.Reflection.Emit APIs.

public ref class ReflectionPermission sealed : System::Security::CodeAccessPermission, System::Security::Permissions::IUnrestrictedPermission
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class ReflectionPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Vererbung
ReflectionPermission
Attribute
Implementiert

Hinweise

Ohne ReflectionPermissionkann der Code Reflektion verwenden, um nur auf die öffentlichen Member von Objekten zuzugreifen.Without ReflectionPermission, code can use reflection to access only the public members of objects. Code mit ReflectionPermission und den entsprechenden ReflectionPermissionFlag Flags können auf die protected und private Member von Objekten zugreifen.Code with ReflectionPermission and the appropriate ReflectionPermissionFlag flags can access the protected and private members of objects.

Achtung

Da ReflectionPermission Zugriff auf nicht öffentliche Typen und Member bereitstellen kann, empfiehlt es sich nicht, ReflectionPermission Internet Code zu gewähren, außer mit dem ReflectionPermissionFlag.RestrictedMemberAccess-Flag.Because ReflectionPermission can provide access to non-public types and members, we recommend that you do not grant ReflectionPermission to Internet code, except with the ReflectionPermissionFlag.RestrictedMemberAccess flag. RestrictedMemberAccess ermöglicht den Zugriff auf nicht öffentliche Member, mit der Einschränkung, dass der Grant-Satz der nicht öffentlichen Member gleich dem Berechtigungs Satz des Codes sein muss, der auf die nicht öffentlichen Member zugreift.RestrictedMemberAccess allows access to non-public members, with the restriction that the grant set of the non-public members must be equal to, or a subset of, the grant set of the code that accesses the non-public members.

Bestimmte Funktionen der Reflektionsausgabe, z. b. das Ausgeben von Debugsymbolen, erfordern ReflectionPermission mit dem ReflectionPermissionFlag.ReflectionEmit-Flag.Certain features of reflection emit, such as emitting debug symbols, require ReflectionPermission with the ReflectionPermissionFlag.ReflectionEmit flag.

Weitere Informationen finden Sie unter der ReflectionPermissionFlag-Enumeration.For more information, see the ReflectionPermissionFlag enumeration.

Konstruktoren

ReflectionPermission(PermissionState)

Initialisiert eine neue Instanz der ReflectionPermission-Klasse mit vollständig eingeschränkter oder uneingeschränkter Berechtigung, wie angegeben.Initializes a new instance of the ReflectionPermission class with either fully restricted or unrestricted permission as specified.

ReflectionPermission(ReflectionPermissionFlag)

Initialisiert eine neue Instanz der ReflectionPermission-Klasse mit dem angegebenen Zugriff.Initializes a new instance of the ReflectionPermission class with the specified access.

Eigenschaften

Flags

Dient zum Abrufen oder Festlegen des Typs der Reflektion, die für die aktuelle Berechtigung zulässig ist.Gets or sets the type of reflection allowed for the current permission.

Methoden

Assert()

Deklariert, dass der aufrufende Code auf die durch eine Berechtigungsforderung geschützte Ressource über den diese Methode aufrufenden Code zugreifen kann, auch wenn Aufrufern einer höheren Ebene im Stapel keine Berechtigung zum Zugreifen auf die Ressource erteilt wurde.Declares that the calling code can access the resource protected by a permission demand through the code that calls this method, even if callers higher in the stack have not been granted permission to access the resource. Die Verwendung von Assert() kann zu Sicherheitsproblemen führen.Using Assert() can create security issues.

(Geerbt von CodeAccessPermission)
Copy()

Erstellt eine identische Kopie der aktuellen Berechtigung und gibt sie zurück.Creates and returns an identical copy of the current permission.

Demand()

Erzwingt zur Laufzeit eine SecurityException, wenn nicht allen Aufrufern, die in der Aufrufliste höher eingestuft sind, die Berechtigung gewährt wurde, die von der aktuellen Instanz angegeben wird.Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permission specified by the current instance.

(Geerbt von CodeAccessPermission)
Deny()

Verhindert, dass in der Aufrufliste höher eingestufte Aufrufer den Code verwenden, der diese Methode aufruft, um auf die Ressource zuzugreifen, die von der aktuellen Instanz angegeben wird.Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

(Geerbt von CodeAccessPermission)
Equals(Object)

Bestimmt, ob das angegebene CodeAccessPermission-Objekt der aktuellen CodeAccessPermission entspricht.Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Geerbt von CodeAccessPermission)
FromXml(SecurityElement)

Stellt eine Berechtigung mit einem angegebenen Zustand aus einer XML-Codierung wieder her.Reconstructs a permission with a specified state from an XML encoding.

GetHashCode()

Ruft einen Hashcode für das CodeAccessPermission-Objekt ab, das sich für die Verwendung in Hashalgorithmen und Datenstrukturen eignet, z.B. in einer Hashtabelle.Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

(Geerbt von CodeAccessPermission)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
Intersect(IPermission)

Erstellt eine Berechtigung als Schnittmenge der aktuellen und der angegebenen Berechtigung und gibt diese zurück.Creates and returns a permission that is the intersection of the current permission and the specified permission.

IsSubsetOf(IPermission)

Bestimmt, ob die aktuelle Berechtigung eine Teilmenge der angegebenen Berechtigung ist.Determines whether the current permission is a subset of the specified permission.

IsUnrestricted()

Gibt einen Wert zurück, der angibt, ob die aktuelle Berechtigung uneingeschränkt ist.Returns a value indicating whether the current permission is unrestricted.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
PermitOnly()

Verhindert, dass in der Aufrufliste höher eingestufte Aufrufer den Code, der diese Methode aufruft, verwenden, um auf alle Ressourcen außer die Ressource zuzugreifen, die von der aktuellen Instanz angegeben wird.Prevents callers higher in the call stack from using the code that calls this method to access all resources except for the resource specified by the current instance.

(Geerbt von CodeAccessPermission)
ToString()

Erstellt eine Zeichenfolgendarstellung des aktuellen Berechtigungsobjekts und gibt diese zurück.Creates and returns a string representation of the current permission object.

(Geerbt von CodeAccessPermission)
ToXml()

Erstellt eine XML-Codierung der Berechtigung und ihres aktuellen Zustands.Creates an XML encoding of the permission and its current state.

Union(IPermission)

Erstellt eine Berechtigung als Kombination der aktuellen und der angegebenen Berechtigung.Creates a permission that is the union of the current permission and the specified permission.

Explizite Schnittstellenimplementierungen

IPermission.Demand() (Geerbt von CodeAccessPermission)
IStackWalk.Assert() (Geerbt von CodeAccessPermission)
IStackWalk.Demand() (Geerbt von CodeAccessPermission)
IStackWalk.Deny() (Geerbt von CodeAccessPermission)
IStackWalk.PermitOnly() (Geerbt von CodeAccessPermission)

Gilt für:

Siehe auch