FieldInfo.IsSecurityCritical 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得值,這個值表示目前欄位在目前信任層級上是否為安全性關鍵或安全性安全關鍵。
public:
virtual property bool IsSecurityCritical { bool get(); };
public virtual bool IsSecurityCritical { get; }
member this.IsSecurityCritical : bool
Public Overridable ReadOnly Property IsSecurityCritical As Boolean
屬性值
如果目前欄位在目前信任層級上為安全性關鍵或安全性安全關鍵,則為 true
,如果是透明,則為 false
。
備註
IsSecurityCritical、 IsSecuritySafeCritical和 IsSecurityTransparent 屬性會報告欄位目前信任層級的透明度層級,如 Common Language Runtime (CLR) 所決定。 下表顯示這些屬性的組合:
安全性層級 | IsSecurityCritical | IsSecuritySafeCritical | IsSecurityTransparent |
---|---|---|---|
重大 | true |
false |
false |
安全關鍵 | true |
true |
false |
透明 | false |
false |
true |
使用這些屬性比檢查元件及其類型和成員的安全性批注、檢查目前的信任層級,以及嘗試複製運行時間的規則更為簡單。
重要
對於部分信任元件,此屬性的值取決於元件目前的信任層級。 例如,如果元件載入部分信任的應用程式域 (到沙盒化應用程式域) ,則運行時間會忽略元件的安全性批注。 元件及其所有類型都會被視為透明。 運行時間只會注意部分信任元件的安全性批註,只有當該元件載入至完全信任的應用程式域時, (例如,載入傳統型應用程式的默認應用程式域) 。 相較之下,信任的元件 (也就是說,全域程式集緩存中安裝的強名稱元件) 一律會以完全信任的方式載入,而不論應用程式域的信任層級為何,其目前的信任層級一律會完全信任。 您可以使用和 AppDomain.IsFullyTrusted 屬性來判斷元件和應用程式域Assembly.IsFullyTrusted目前的信任層級。
如需反映和透明度的詳細資訊,請參閱 反映的安全性考慮。 如需透明度的相關信息,請參閱 安全性變更。