SecurityManager.CurrentThreadRequiresSecurityContextCapture 方法

定义

确定在必须在稍后的某个时间点重新创建当前线程的安全状态的情况下,当前线程是否需要安全上下文捕获。

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 是安全关键,因为它的主要用途是避免不必要的安全上下文捕获,这表示使用它的代码对安全敏感,必须进行审核。

适用于