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
;如果公共语言运行时无法保证堆栈不包含其中任一项,则为 true
。
- 属性
注解
可以在缓存在安全要求成功后获取的敏感数据之前使用 CurrentThreadRequiresSecurityContextCapture 方法。
Assert如果在堆栈上调用了 该方法,则不应在不捕获相应的安全上下文的情况下缓存数据。 否则,在 下 Assert 获取的敏感数据可能可供不再运行的代码使用 Assert 。
重要
返回值仅在 为 false
时才可靠,这意味着保证线程不需要安全上下文捕获。 当不需要安全上下文捕获时,方法可能会返回 true,以避免安全漏洞。
CurrentThreadRequiresSecurityContextCapture 是安全关键,因为它的主要用途是避免不必要的安全上下文捕获,这表示使用它的代码对安全敏感,必须进行审核。