MethodBase.IsSecurityCritical Vlastnost

Definice

Získá hodnotu, která označuje, zda je aktuální metoda nebo konstruktor v aktuální úrovni vztahu důvěryhodnosti kritický pro zabezpečení nebo bezpečný a proto může provádět kritické operace.

public:
 virtual property bool IsSecurityCritical { bool get(); };
public virtual bool IsSecurityCritical { get; }
member this.IsSecurityCritical : bool
Public Overridable ReadOnly Property IsSecurityCritical As Boolean

Hodnota vlastnosti

Boolean

true Pokud je aktuální metoda nebo konstruktor v aktuální úrovni vztahu důvěryhodnosti kritický pro zabezpečení nebo bezpečný, je kritický. false Pokud je transparentní.

Poznámky

IsSecurityCriticalVlastnosti, IsSecuritySafeCritical a IsSecurityTransparent nahlásí úroveň transparentnosti metody nebo konstruktoru na aktuální úrovni vztahu důvěryhodnosti, jak je určeno modulem CLR (Common Language Runtime). Kombinace těchto vlastností jsou uvedeny v následující tabulce:

Úroveň zabezpečení IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent
Kritické true false false
Bezpečně kritická true true false
Průhlednost false false true

Použití těchto vlastností je mnohem jednodušší než zkoumání poznámek zabezpečení sestavení a jeho typů a členů, kontrolu aktuální úrovně vztahu důvěryhodnosti a pokus o duplikaci pravidel modulu runtime.

Důležité

U částečně důvěryhodných sestavení závisí hodnota této vlastnosti na aktuální úrovni důvěryhodnosti sestavení. Pokud je sestavení načteno do částečně důvěryhodné domény aplikace (například do domény aplikace v izolovaném prostoru), modul runtime ignoruje poznámky zabezpečení sestavení. Sestavení a všechny jeho typy jsou považovány za průhledné. Modul runtime bere v úvahu poznámky k zabezpečení částečné důvěryhodného sestavení jen tehdy, je-li sestavení načteno do plně důvěryhodné domény aplikace (například do výchozí domény aplikace pracovní plochy). Důvěryhodné sestavení (tj. sestavení se silným názvem, které je nainstalováno v globální mezipaměti sestavení) je naproti tomu vždy načteno s plnou důvěryhodností bez ohledu na úroveň důvěryhodnosti domény aplikace, takže jeho aktuální úroveň důvěryhodnosti je vždy „plně důvěryhodné“. Můžete určit aktuální úrovně důvěryhodnosti sestavení a domén aplikace pomocí Assembly.IsFullyTrusted AppDomain.IsFullyTrusted vlastností a.

Další informace o reflexi a transparentnosti najdete v tématu požadavky na zabezpečení pro reflexi. Informace o transparentnosti najdete v tématu změny zabezpečení.

Platí pro

Viz také