SecurityManager.CurrentThreadRequiresSecurityContextCapture 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
判斷如果稍後必須重新建立目前執行緒的安全性狀態,目前執行緒是否需要擷取安全性內容。
public:
static bool CurrentThreadRequiresSecurityContextCapture();
public static bool CurrentThreadRequiresSecurityContextCapture ();
[System.Security.SecurityCritical]
public static bool CurrentThreadRequiresSecurityContextCapture ();
static member CurrentThreadRequiresSecurityContextCapture : unit -> bool
[<System.Security.SecurityCritical>]
static member CurrentThreadRequiresSecurityContextCapture : unit -> bool
Public Shared Function CurrentThreadRequiresSecurityContextCapture () As Boolean
傳回
如果堆疊未包含部分信任的應用程式定義域、部分信任的組件及目前使用中的 PermitOnly() 或 Deny() 修飾詞,則為 false
,如果 Common Language Runtime 無法保證堆疊完全不含上述任何項目,則為 true
。
- 屬性
備註
您可以在快取成功安全性需求之後取得的敏感性資料之前,先使用 CurrentThreadRequiresSecurityContextCapture 方法。
Assert如果方法在堆疊上呼叫較高,則不需要擷取對應的安全性內容,就不應該快取資料。 否則,在 下 Assert 取得的敏感性資料可能會變成不再使用該 Assert 資料執行的程式碼。
重要
傳回值只有在 是 false
時才可靠,這表示執行緒保證不需要安全性內容擷取。 方法可能會在不需要安全性內容擷取時傳回 true,以避免安全性弱點。
CurrentThreadRequiresSecurityContextCapture 是安全性關鍵,因為它的主要用途是避免不必要的安全性內容擷取,這表示使用該程式碼的程式碼具有安全性敏感性,而且必須經過稽核。