Sdílet prostřednictvím


MethodBase.IsSecuritySafeCritical Vlastnost

Definice

Získá hodnotu, která označuje, zda aktuální metoda nebo konstruktor je zabezpečení-bezpečné-kritické na aktuální úroveň důvěryhodnosti; to znamená, zda může provádět kritické operace a může být přístupný transparentním kódem.

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

Hodnota vlastnosti

true pokud je metoda nebo konstruktor kritický z hlediska zabezpečení na aktuální úrovni důvěryhodnosti; false pokud je to důležité z hlediska zabezpečení nebo transparentní.

Poznámky

IsSecurityCriticalVlastnosti , IsSecuritySafeCriticala IsSecurityTransparent hlásí úroveň transparentnosti metody nebo konstruktoru na aktuální úrovni důvěryhodnosti, jak určuje modul 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ů, kontrola aktuální úrovně důvěryhodnosti a pokus o duplikování 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é“. Aktuální úrovně důvěryhodnosti sestavení a domén aplikací můžete určit pomocí Assembly.IsFullyTrusted vlastností a AppDomain.IsFullyTrusted .

Další informace o reflexi a transparentnosti najdete v tématu Aspekty zabezpečení pro reflexi. Informace o transparentnosti najdete v tématu Změny zabezpečení.

Platí pro

Viz také