FieldInfo.IsSecurityCritical 屬性

定義

取得值,這個值表示目前欄位在目前信任層級上是否為安全性關鍵或安全性安全關鍵。

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

屬性值

Boolean

如果目前欄位在目前信任層級上為安全性關鍵或安全性安全關鍵,則為 true,如果是透明,則為 false

備註

IsSecurityCriticalIsSecuritySafeCritical 和屬性會 IsSecurityTransparent 報告目前信任層級的欄位透明度層級(由 common LANGUAGE runtime (CLR) 所決定)。 下表顯示這些屬性的組合:

安全性層級 IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent
重大 true false false
保管庫重大 true true false
透明 false false true

使用這些屬性會比檢查元件及其類型和成員的安全性批註、檢查目前的信任層級,以及嘗試複製執行時間的規則更簡單。

重要

針對部分信任元件,這個屬性的值取決於元件目前的信任層級。 如果將元件載入至部分信任的應用程式域 (例如,加入至沙箱應用程式域) ,則執行時間會忽略元件的安全性注釋。 元件及其所有類型都會被視為透明。 只有當元件載入到完全信任的應用程式 (域時,執行時間才會注意部分信任元件的安全性附注,例如,在桌面應用程式的預設應用程式域中) 。 相反地,信任的元件 (亦即,安裝在全域組件快取) 中的強式名稱元件,一律會以完全信任方式載入,而不論應用程式域的信任層級為何,因此其目前的信任層級一律為完全信任。 您可以使用和屬性,判斷目前的元件和應用程式域信任層級 Assembly.IsFullyTrusted AppDomain.IsFullyTrusted

如需反映和透明度的詳細資訊,請參閱 反映的安全性考慮。 如需透明度的詳細資訊,請參閱 安全性變更

適用於

另請參閱