Udostępnij za pośrednictwem


FieldInfo.IsSecurityCritical Właściwość

Definicja

Pobiera wartość wskazującą, czy bieżące pole ma krytyczne znaczenie dla zabezpieczeń, czy bezpieczeństwo krytyczne dla bezpieczeństwa na bieżącym poziomie zaufania.

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

Wartość właściwości

true jeśli bieżące pole ma krytyczne znaczenie dla zabezpieczeń lub bezpieczeństwo krytyczne dla bezpieczeństwa na bieżącym poziomie zaufania; false jeśli jest przezroczysty.

Uwagi

Właściwości IsSecurityCritical, IsSecuritySafeCriticali IsSecurityTransparent zgłaszają poziom przezroczystości pola na bieżącym poziomie zaufania określonym przez środowisko uruchomieniowe języka wspólnego (CLR). W poniższej tabeli przedstawiono kombinacje tych właściwości:

Poziom zabezpieczeń IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent
Krytyczne true false false
Bezpieczne krytyczne true true false
Przezroczyste false false true

Użycie tych właściwości jest znacznie prostsze niż badanie adnotacji zabezpieczeń zestawu i jego typów i elementów członkowskich, sprawdzanie bieżącego poziomu zaufania i próby zduplikowania reguł środowiska uruchomieniowego.

Ważne

Dla zestawów częściowego zaufania wartość tej właściwości zależy od bieżącego poziomu zaufania dla zestawu. Jeżeli zestaw jest ładowany do domeny aplikacji częściowo zaufanej (na przykład w domenie aplikacji w trybie piaskownicy), środowisko wykonawcze ignoruje adnotacje zabezpieczeń zestawu. Zestaw i wszystkie jego typy są traktowane jako przezroczyste. Środowisko wykonawcze zwraca uwagę na adnotacje zabezpieczeń zestawu częściowego zaufania tylko wtedy, gdy zestaw ten jest ładowany do w pełni zaufanej domeny aplikacji (na przykład, do domyślnej domeny aplikacji z aplikacji pulpitu). Z drugiej strony zaufany zestaw (czyli zestaw z silną nazwą zainstalowaną w globalnej pamięci podręcznej zestawów) zawsze jest ładowany z pełnym zaufaniem, bez względu na poziom zaufania domeny aplikacji, więc jego bieżący poziom zaufania zawsze jest w pełni zaufany. Przy użyciu Assembly.IsFullyTrusted właściwości i AppDomain.IsFullyTrusted można określić bieżące poziomy zaufania zestawów i domen aplikacji.

Aby uzyskać więcej informacji na temat odbicia i przejrzystości, zobacz Zagadnienia dotyczące zabezpieczeń do odbicia. Aby uzyskać informacje o przejrzystości, zobacz Zmiany zabezpieczeń.

Dotyczy

Zobacz też