ReflectionPermission Klasse

Definition

Achtung

Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}

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
public sealed class ReflectionPermission : 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 ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ReflectionPermission : System.Security.CodeAccessPermission, System.Security.Permissions.IUnrestrictedPermission
type ReflectionPermission = 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 ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class ReflectionPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Vererbung
ReflectionPermission
Attribute
Implementiert

Hinweise

Ohne ReflectionPermission kann 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 das protected -Element und das-Element private 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 erteilen, 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. 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()
Veraltet.
Veraltet.

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 und das aktuelle CodeAccessPermission-Objekt gleich sind.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()

Löst zur Laufzeit eine SecurityException aus, wenn die Sicherheitsanforderung nicht erfüllt ist.Throws a SecurityException at run time if the security requirement is not met.

(Geerbt von CodeAccessPermission)
IStackWalk.Assert()

Bestätigt, dass der aufrufende Code auf die durch das aktuelle Berechtigungsobjekt identifizierte Ressource zugreifen kann, selbst wenn Aufrufern einer höheren Ebene in der Aufrufliste keine Berechtigung für den Zugriff auf die Ressource erteilt wurde.Asserts that the calling code can access the resource identified by the current permission object, even if callers higher in the stack have not been granted permission to access the resource.

(Geerbt von CodeAccessPermission)
IStackWalk.Demand()

Ermittelt zur Laufzeit, ob allen Aufrufern in der Aufrufliste die vom aktuellen Berechtigungsobjekt angegebene Berechtigung erteilt wurde.Determines at run time whether all callers in the call stack have been granted the permission specified by the current permission object.

(Geerbt von CodeAccessPermission)
IStackWalk.Deny()

Bewirkt einen Fehler bei jeder Demand() für das aktuelle Objekt, das den aufrufenden Code durchläuft.Causes every Demand() for the current object that passes through the calling code to fail.

(Geerbt von CodeAccessPermission)
IStackWalk.PermitOnly()

Bewirkt, dass es bei jedem Demand() für alle den aufrufenden Code durchlaufenden Objekte (mit Ausnahme des aktuellen Objekts) zu einem Fehler kommt, selbst wenn übergeordnetem Code in der Aufrufliste die Berechtigung für den Zugriff auf andere Ressourcen gewährt wurde.Causes every Demand() for all objects except the current one that pass through the calling code to fail, even if code higher in the call stack has been granted permission to access other resources.

(Geerbt von CodeAccessPermission)

Gilt für:

Weitere Informationen