Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

ReflectionPermissionFlag-Enumeration

 

Veröffentlicht: Oktober 2016

Gibt die zulässige Verwendung von der System.Reflection und System.Reflection.Emit Namespaces.

Diese Enumeration verfügt über ein FlagsAttribute-Attribut, das eine bitweise Kombination der Memberwerte zulässt.

Namespace:   System.Security.Permissions
Assembly:  mscorlib (in mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
[FlagsAttribute]
public enum ReflectionPermissionFlag

MembernameBeschreibung
AllFlags

Veraltet. TypeInformation, MemberAccess, und ReflectionEmit festgelegt werden. AllFlags enthält keinen RestrictedMemberAccess.

MemberAccess

Aufrufvorgänge sind für alle Elemente sind unabhängig vom Berechtigungssatz zulässig. Wenn dieses Flag nicht festgelegt ist, sind Aufrufvorgänge ausschließlich für sichtbare Member zulässig.

NoFlags

Enumeration von Typen und Membern ist zulässig. Aufrufvorgänge sind für sichtbare Typen und Member zulässig.

ReflectionEmit

Veraltet. Ausgeben von Debugsymbolen ist zulässig. Beginnend mit der .NET Framework 2.0 Service Pack 1, ist dieser Flag zum Ausgeben von Code nicht mehr erforderlich.

RestrictedMemberAccess

Für teilweise vertrauenswürdigen Code wird eingeschränkter Memberzugriff bereitgestellt. Teilweise vertrauenswürdiger Code kann auf nicht öffentliche Typen und Member zugreifen, aber nur, wenn der Berechtigungssatz der teilweise vertrauenswürdigen Codes alle Berechtigungen bei der Berechtigungssatz der Assembly, die nicht öffentliche Typen und Member, auf die zugegriffen wird, enthält. Dieses Flag ist neu in der .NET Framework 2.0 SP1.

TypeInformation

Veraltet. Dieses Flag ist veraltet. Es sind keine Flags erforderlich, Typen und Member auflisten und ihre Metadaten zu überprüfen. Verwenden Sie stattdessen NoFlags.

Diese Enumeration wird verwendet, indem Sie die ReflectionPermission und ReflectionPermissionAttribute Klassen. Wenn keine ReflectionPermission erteilt wurde, ist die Reflexion für alle Typen und Member zulässig, aber Aufrufvorgänge sind nur auf sichtbare Typen und Member zulässig. Weitere Informationen finden Sie unter Sicherheitsüberlegungen für die Reflektion.

System_CAPS_cautionAchtung

Da ReflectionPermission Zugriff auf private Klassenmember, wird empfohlen, Sie gewähren ReflectionPermission nur mit der RestrictedMemberAccess -Flag und mit keinen anderen Flags.

Das RestrictedMemberAccess-Flag wurde in .NET Framework 2.0 SP1 eingeführt. Um dieses Flag verwenden, Ihre Anwendung abzielen, sollten die .NET Framework 3.5 oder höher.

System_CAPS_importantWichtig

AllFlags schließt nicht die RestrictedMemberAccess Flag. Um eine Maske abzurufen, die alle Flags in dieser Enumeration enthält, müssen Sie anhand der Kombination aus AllFlags mit RestrictedMemberAccess.

Beginnend mit der .NET Framework 2.0 SP1, der ReflectionEmit Flag ist nicht mehr zum Ausgeben von Code erforderlich, es sei denn, Sie Debugsymbole ausgegeben werden. Um dieses Feature verwenden zu können, Ihre Anwendung abzielen, sollten die .NET Framework 3.5 oder höher.

Beginnend mit der .NET Framework 2.0, der TypeInformation Flag nicht mehr benötigt wird, um auf nicht öffentliche Typen und Member entsprechen; das Flag ist als veraltet markiert wurden.

Das folgende Beispiel zeigt, wie Sie die ReflectionPermissionFlag -Enumeration zum Initialisieren einer neuen Instanz von der ReflectionPermission -Klasse, die die Berechtigung für den eingeschränkten Memberzugriff darstellt. Dieses Beispiel ist Teil eines umfangreicheren Beispiels für die ReflectionPermission Klasse.

Ein Beispiel für die Verwendung der RestrictedMemberAccess mit Internetcode kennzeichnen, finden Sie unter Exemplarische Vorgehensweise: Ausgeben von Code in Szenarien mit teilweiser Vertrauenswürdigkeit.

ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);

.NET Framework
Verfügbar seit 1.1
Zurück zum Anfang
Anzeigen: