Type.IsSecuritySafeCritical 屬性

定義

取得值,這個值表示目前類型在目前信任層級上是否為安全性安全關鍵,也就是說,它是否能執行重要作業並由安全性透明的程式碼存取。

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

屬性值

true 如果目前類型在目前信任層級為安全性安全關鍵,則為 ; false 如果安全性關鍵或透明,則為 。

備註

IsSecurityCriticalIsSecuritySafeCriticalIsSecurityTransparent 屬性會報告類型目前信任層級的透明度層級,如 Common Language Runtime (CLR) 所決定。 下表顯示這些屬性的組合:

安全性層級 IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent
重大 true false false
安全關鍵 true true false
透明 false false true

使用這些屬性會比檢查組件及其類型的安全性註釋、檢查目前的信任層級,以及嘗試複製執行階段規則更簡單。

重要

對於部分信任元件,此屬性的值取決於元件目前的信任層級。 例如,如果元件載入部分信任的應用程式域 (到沙盒化應用程式域) ,則運行時間會忽略元件的安全性批注。 元件及其所有類型都會被視為透明。 運行時間只會注意部分信任元件的安全性批註,只有當該元件載入至完全信任的應用程式域時, (例如,載入傳統型應用程式的默認應用程式域) 。 相較之下,信任的元件 (也就是說,全域程式集緩存中安裝的強名稱元件) 一律會以完全信任的方式載入,而不論應用程式域的信任層級為何,其目前的信任層級一律會完全信任。 您可以使用和 AppDomain.IsFullyTrusted 屬性來判斷元件和應用程式域Assembly.IsFullyTrusted目前的信任層級。

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

適用於

另請參閱