IPermission 接口

定义

注意

Code Access Security is not supported or honored by the runtime.

定义权限类型实现的方法。

public interface class IPermission : System::Security::ISecurityEncodable
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public interface IPermission : System.Security.ISecurityEncodable
public interface IPermission : System.Security.ISecurityEncodable
[System.Runtime.InteropServices.ComVisible(true)]
public interface IPermission : System.Security.ISecurityEncodable
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type IPermission = interface
    interface ISecurityEncodable
type IPermission = interface
    interface ISecurityEncodable
[<System.Runtime.InteropServices.ComVisible(true)>]
type IPermission = interface
    interface ISecurityEncodable
Public Interface IPermission
Implements ISecurityEncodable
派生
属性
实现

注解

Caution

代码访问安全性(CAS)已在 .NET Framework 和 .NET 的所有版本中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求完成安全任务的替代方法。

公共语言运行时中的权限是描述可为指定资源保护的操作集的对象。 权限对象描述受安全控制的约束的操作或访问;它不表示访问权限或执行操作的权利。 应用程序代码和 .NET Framework 安全系统使用以下方式使用权限:

  • 代码请求它运行所需的权限。
  • 安全系统策略授予对代码的权限,以便其运行。
  • 代码要求调用代码具有权限。
  • 代码使用断言/拒绝/仅允许重写安全堆栈。

注释

如果编写新权限,则必须在类中实现此接口。

Important

多个线程可以访问权限。 实现此接口时,必须确保IsSubsetOfIntersectUnionCopy方法实现是线程安全的。

方法

名称 说明
Copy()
已过时.

创建并返回当前权限的相同副本。

Demand()
已过时.

SecurityException如果未满足安全要求,则引发运行时。

FromXml(SecurityElement)
已过时.

从 XML 编码重新构造具有指定状态的安全对象。

(继承自 ISecurityEncodable)
Intersect(IPermission)
已过时.

创建并返回一个权限,该权限是当前权限和指定权限的交集。

IsSubsetOf(IPermission)
已过时.

确定当前权限是否为指定权限的子集。

ToXml()
已过时.

创建安全对象的 XML 编码及其当前状态。

(继承自 ISecurityEncodable)
Union(IPermission)
已过时.

创建一个权限,该权限是当前权限和指定权限的并集。

适用于