IPermission 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注意
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
多个线程可以访问权限。 实现此接口时,必须确保IsSubsetOf和IntersectUnionCopy方法实现是线程安全的。
方法
| 名称 | 说明 |
|---|---|
| Copy() |
已过时.
创建并返回当前权限的相同副本。 |
| Demand() |
已过时.
SecurityException如果未满足安全要求,则引发运行时。 |
| FromXml(SecurityElement) |
已过时.
从 XML 编码重新构造具有指定状态的安全对象。 (继承自 ISecurityEncodable) |
| Intersect(IPermission) |
已过时.
创建并返回一个权限,该权限是当前权限和指定权限的交集。 |
| IsSubsetOf(IPermission) |
已过时.
确定当前权限是否为指定权限的子集。 |
| ToXml() |
已过时.
创建安全对象的 XML 编码及其当前状态。 (继承自 ISecurityEncodable) |
| Union(IPermission) |
已过时.
创建一个权限,该权限是当前权限和指定权限的并集。 |