PermissionSet.PermitOnly 方法

导致所有经过调用代码以请求不是当前 PermissionSet 的子集的任何 PermissionSetDemand 失败。

**命名空间:**System.Security
**程序集:**mscorlib(在 mscorlib.dll 中)

语法

声明
Public Sub PermitOnly
用法
Dim instance As PermissionSet

instance.PermitOnly
public void PermitOnly ()
public:
virtual void PermitOnly () sealed
public final void PermitOnly ()
public final function PermitOnly ()

备注

PermitOnlyDeny 相似,因为两者在堆栈遍历本应成功时都会导致堆栈步失败。两者的差别在于:Deny 指定将导致堆栈遍历失败的权限,而 PermitOnly 仅指定不会导致堆栈遍历失败的权限。调用此方法以确保您的代码只能用来访问指定的资源。

对未授予的权限忽略 PermitOnly,因为对该权限的请求不会成功。但是,如果调用堆栈上的低级代码后来对该权限调用 Demand,则当堆栈遍历到达曾试图调用 PermitOnly 的代码时将引发 SecurityException。这是因为调用 PermitOnly 的代码尚未被授予权限,即使该代码对该权限调用了 PermitOnly。调用堆栈一般表示为缩小,以便调用堆栈中较高的方法可调用调用堆栈中较低的方法。

平台

Windows 98、Windows 2000 SP4、Windows Millennium Edition、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

PermissionSet 类
PermissionSet 成员
System.Security 命名空间

其他资源

使用 PermitOnly 方法
重写安全检查