SecurityPermissionFlag 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注意
Code Access Security is not supported or honored by the runtime.
指定安全权限对象的访问标志。
此枚举支持其成员值的按位组合。
public enum class SecurityPermissionFlag
[System.Flags]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum SecurityPermissionFlag
[System.Flags]
public enum SecurityPermissionFlag
[System.Flags]
[System.Serializable]
public enum SecurityPermissionFlag
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum SecurityPermissionFlag
[<System.Flags>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SecurityPermissionFlag =
[<System.Flags>]
type SecurityPermissionFlag =
[<System.Flags>]
[<System.Serializable>]
type SecurityPermissionFlag =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityPermissionFlag =
Public Enum SecurityPermissionFlag
- 继承
- 属性
字段
| 名称 | 值 | 说明 |
|---|---|---|
| NoFlags | 0 | 无安全访问。 |
| Assertion | 1 | 能够断言所有此代码的调用方都具有操作的必要权限。 |
| UnmanagedCode | 2 | 能够调用非托管代码。 由于非托管代码可能允许绕过其他权限,因此这是一种危险的权限,只能授予高度信任的代码。 它用于此类应用程序,例如使用 PInvoke 或 COM 互操作调用本机代码。 |
| SkipVerification | 4 | 能够跳过此程序集中的代码验证。 如果授予此权限,则无法验证的代码可以运行。 这是一个强大的权限,只应授予高度受信任的代码。 当动态与堆栈修饰符(例如 Deny(), Assert()和 PermitOnly())一起使用时,此标志不起作用。 |
| Execution | 8 | 要运行的代码的权限。 如果没有此权限,将不会执行托管代码。 当动态与堆栈修饰符(例如 Deny(), Assert()和 PermitOnly())一起使用时,此标志不起作用。 |
| ControlThread | 16 | 能够在线程上使用某些高级操作。 |
| ControlEvidence | 32 | 提供证据的能力,包括更改公共语言运行时提供的证据的能力。 这是一个强大的权限,只能授予高度受信任的代码。 |
| ControlPolicy | 64 | 能够查看和修改策略。 这是一个强大的权限,只能授予高度受信任的代码。 |
| SerializationFormatter | 128 | 提供序列化服务的功能。 序列化格式化程序使用。 |
| ControlDomainPolicy | 256 | 能够指定域策略。 |
| ControlPrincipal | 512 | 能够操作主体对象。 |
| ControlAppDomain | 1024 | 能够创建和操作 .AppDomain |
| RemotingConfiguration | 2048 | 配置远程处理类型和通道的权限。 |
| Infrastructure | 4096 | 将代码插入公共语言运行时基础结构的权限,例如添加远程处理上下文接收器、Envoy 接收器和动态接收器。 |
| BindingRedirects | 8192 | 在应用程序配置文件中执行显式绑定重定向的权限。 这包括.NET程序集的重定向,这些程序集已统一,以及.NET外部找到的其他程序集。 |
| AllFlags | 16383 | 权限的无限制状态。 |
注解
Caution
代码访问安全性(CAS)已在 .NET Framework 和 .NET 的所有版本中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求完成安全任务的替代方法。
此枚举由 SecurityPermission 使用。
Caution
其中许多标志非常强大,只应授予高度受信任的代码。