ReflectionPermission Třída

Definice

Upozornění

Code Access Security is not supported or honored by the runtime.

Řídí přístup k neveřejovým typům a členům prostřednictvím System.Reflection rozhraní API. Řídí některé funkce System.Reflection.Emit rozhraní API.

public ref class ReflectionPermission sealed : 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
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}")>]
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
type ReflectionPermission = class
    inherit CodeAccessPermission
    interface IUnrestrictedPermission
Public NotInheritable Class ReflectionPermission
Inherits CodeAccessPermission
Implements IUnrestrictedPermission
Dědičnost
ReflectionPermission
Atributy
Implementuje

Poznámky

Caution

Zabezpečení přístupu kódu (CAS) je zastaralé ve všech verzích rozhraní .NET Framework a .NET. Nedávné verze .NET nezohledňují anotace CAS a způsobují chyby, pokud se používají API související s CAS. Vývojáři by měli hledat alternativní způsoby provádění úloh zabezpečení.

Bez ReflectionPermissionkódu lze použít reflexi pro přístup pouze k veřejným členům objektů. Kód s ReflectionPermission příslušnými ReflectionPermissionFlag příznaky má přístup k protected objektům a private členům objektů.

Caution

Protože ReflectionPermission může poskytovat přístup k neveřejným typům a členům, doporučujeme, abyste neudělili ReflectionPermission internetový kód s výjimkou příznaku ReflectionPermissionFlag.RestrictedMemberAccess . RestrictedMemberAccess umožňuje přístup k neveřejným členům s omezením, že sada neveřejných členů musí být stejná nebo podmnožina kódu, který přistupuje k neveřejným členům.

Některé funkce generování reflexe, například generování symbolů ladění, vyžadují ReflectionPermission s příznakem ReflectionPermissionFlag.ReflectionEmit .

Další informace naleznete v výčtu ReflectionPermissionFlag .

Konstruktory

Name Description
ReflectionPermission(PermissionState)
Zastaralé.

Inicializuje novou instanci ReflectionPermission třídy s plně omezeným nebo neomezeným oprávněním, jak je uvedeno.

ReflectionPermission(ReflectionPermissionFlag)
Zastaralé.

Inicializuje novou instanci ReflectionPermission třídy se zadaným přístupem.

Vlastnosti

Name Description
Flags
Zastaralé.

Získá nebo nastaví typ reflexe povolené pro aktuální oprávnění.

Metody

Name Description
Assert()
Zastaralé.

Deklaruje, že volající kód má přístup k prostředku chráněnému požadavkem oprávnění prostřednictvím kódu, který tuto metodu volá, i když volajícím vyšší v zásobníku nebyla udělena oprávnění pro přístup k prostředku. Použití Assert() může vytvářet problémy se zabezpečením.

(Zděděno od CodeAccessPermission)
Copy()
Zastaralé.

Vytvoří a vrátí stejnou kopii aktuálního oprávnění.

Demand()
Zastaralé.

SecurityException Vynutí čas spuštění, pokud všichni volající vyšší v zásobníku volání nebyl uděleni oprávnění určená aktuální instancí.

(Zděděno od CodeAccessPermission)
Deny()
Zastaralé.
Zastaralé.

Zabrání volajícím ve vyšší části zásobníku volání použít kód, který volá tuto metodu pro přístup k prostředku určenému aktuální instancí.

(Zděděno od CodeAccessPermission)
Equals(Object)
Zastaralé.

Určuje, zda zadaný CodeAccessPermission objekt je roven aktuální CodeAccessPermission.

(Zděděno od CodeAccessPermission)
FromXml(SecurityElement)
Zastaralé.

Rekonstruuje oprávnění se zadaným stavem z kódování XML.

GetHashCode()
Zastaralé.

Získá hash kód pro CodeAccessPermission objekt, který je vhodný pro použití v hashovací algoritmy a datové struktury, jako je hash tabulka.

(Zděděno od CodeAccessPermission)
GetType()
Zastaralé.

Získá Type aktuální instance.

(Zděděno od Object)
Intersect(IPermission)
Zastaralé.

Vytvoří a vrátí oprávnění, které je průnikem aktuálního oprávnění a zadaného oprávnění.

IsSubsetOf(IPermission)
Zastaralé.

Určuje, zda je aktuální oprávnění podmnožinou zadaného oprávnění.

IsUnrestricted()
Zastaralé.

Vrátí hodnotu označující, jestli je aktuální oprávnění neomezené.

MemberwiseClone()
Zastaralé.

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
PermitOnly()
Zastaralé.

Zabrání volajícím v zásobníku volání používat kód, který volá tuto metodu pro přístup ke všem prostředkům s výjimkou prostředku určeného aktuální instancí.

(Zděděno od CodeAccessPermission)
ToString()
Zastaralé.

Vytvoří a vrátí řetězcovou reprezentaci aktuálního objektu oprávnění.

(Zděděno od CodeAccessPermission)
ToXml()
Zastaralé.

Vytvoří kódování XML oprávnění a jeho aktuální stav.

Union(IPermission)
Zastaralé.

Vytvoří oprávnění, které je sjednocením aktuálního oprávnění a zadaného oprávnění.

Platí pro

Viz také