PermissionSet.Assert 方法

定义

声明调用代码能够通过调用此方法的代码,访问受权限请求保护的资源,即使未对堆栈中处于较高位置的调用方授予访问该资源的权限。 使用 Assert() 会产生安全漏洞。

public:
 virtual void Assert();
public void Assert ();
public virtual void Assert ();
abstract member Assert : unit -> unit
override this.Assert : unit -> unit
Public Sub Assert ()
Public Overridable Sub Assert ()

实现

例外

尚未向断言的 PermissionSet 实例授予断言代码。

- 或 -

已存在一个用于当前帧的活动的 Assert()

注解

这是在帧内同时断言多个权限的唯一方法,因为一个帧上只能有一个 Assert 权限处于活动状态。 Assert 仅对授予的权限有效。 CodeAccessPermission.RevertAssert调用 或 CodeAccessPermission.RevertAll 方法以取消活动 Assert

注意

由于调用 Assert 方法消除了必须向调用链中的所有代码授予访问指定资源的权限的要求,因此,如果使用不当或不恰当,则它可能会打开安全漏洞。 因此,应谨慎使用。

适用于

另请参阅