Udostępnij za pośrednictwem


FieldInfo.IsSecuritySafeCritical Właściwość

Definicja

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

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

Wartość właściwości

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

Uwagi

Właściwości IsSecurityCritical, IsSecuritySafeCriticali IsSecurityTransparent raportują 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. Bieżące poziomy zaufania zestawów i domen aplikacji można określić przy użyciu Assembly.IsFullyTrusted właściwości i AppDomain.IsFullyTrusted .

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ż