Type.IsSecuritySafeCritical Vlastnost

Definice

Získá hodnotu, která označuje, zda aktuální typ je zabezpečení-kritické na aktuální úrovni důvěryhodnosti; to znamená, jestli 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 aktuální typ na aktuální úrovni důvěryhodnosti kritický z hlediska zabezpečení; false pokud je to důležité z hlediska zabezpečení nebo je transparentní.

Poznámky

Vlastnosti IsSecurityCritical, IsSecuritySafeCriticala IsSecurityTransparent hlásí úroveň průhlednosti typu na aktuální úrovni 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ů, 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í. Je-li sestavení načteno do částečně důvěryhodné domény aplikace (například do domény aplikace v izolovaném prostoru), bude modul runtime ignorovat poznámky k 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é