FieldInfo.IsSecurityCritical Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá hodnotu, která označuje, zda aktuální pole je kritické zabezpečení nebo bezpečné-kritické zabezpečení na aktuální úrovni důvěryhodnosti.
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
true
pokud je aktuální pole na aktuální úrovni důvěryhodnosti kriticky důležité pro zabezpečení nebo bezpečné zabezpečení; false
pokud je transparentní.
Poznámky
Vlastnosti IsSecurityCritical, IsSecuritySafeCriticala IsSecurityTransparent hlásí úroveň transparentnosti pole 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í. 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í.