SecurityPermissionAttribute 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注意
Code Access Security is not supported or honored by the runtime.
注意
CAS support is not available with Silverlight applications.
允许对要使用声明性安全应用到代码中的 SecurityPermission 执行安全操作。 此类不能被继承。
public ref class SecurityPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Obsolete("CAS support is not available with Silverlight applications.")]
public sealed class SecurityPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type SecurityPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
type SecurityPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type SecurityPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type SecurityPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Obsolete("CAS support is not available with Silverlight applications.")>]
type SecurityPermissionAttribute = class
inherit CodeAccessSecurityAttribute
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
- 继承
- 属性
注解
注意
代码访问安全性 (CAS) 已在所有版本的 .NET Framework 和 .NET 中弃用。 如果使用与 CAS 相关的 API,最新版本的 .NET 不会遵循 CAS 注释,并会生成错误。 开发人员应寻求使用替代方法来完成安全任务。
允许的声明的范围取决于 SecurityAction 所使用的 。
安全属性声明的安全信息存储在属性目标的元数据中,并在运行时由系统访问。 安全属性仅用于声明性安全性。 对于命令性安全性,请使用相应的权限类。
使用 SecurityPermissionAttribute 类时,请遵循具有所请求的权限 () 的安全操作。 可以请求的每个安全权限(如 枚举中 SecurityPermissionFlag 定义)在 类中 SecurityPermissionAttribute 都有相应的属性。 例如,若要要求能够访问非托管代码,请遵循具有所请求的属性设置的 demand 语句,如下所示: SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode=true)
。
备注
枚举与SecurityPermissionAttribute属性之间SecurityPermissionFlag等效性的一个例外是AllFlags,枚举值由Unrestricted继承自SecurityAttribute类) 的属性 (表示。 若要要求所有安全权限,请指定 Unrestricted=true
。
构造函数
SecurityPermissionAttribute(SecurityAction) |
已过时.
已过时.
使用指定的 SecurityPermissionAttribute 初始化 SecurityAction 类的新实例。 |
属性
Action |
已过时.
已过时.
获取或设置安全性操作。 (继承自 SecurityAttribute) |
Assertion |
已过时.
已过时.
获取或设置一个值,该值指示是否已声明以下要断言的权限:所有此代码的调用方具有此操作的所需权限。 |
BindingRedirects |
已过时.
已过时.
获取或设置一个值,该值表示代码是否具有在应用程序配置文件中执行绑定重定向的权限。 |
ControlAppDomain |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了操作 AppDomain 的权限。 |
ControlDomainPolicy |
已过时.
已过时.
获取或设置一个值,该值指示是否声明改变或操作域安全策略的权限。 |
ControlEvidence |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了改变或操作证据的权限。 |
ControlPolicy |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了查看和操作安全策略的权限。 |
ControlPrincipal |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了操作当前主体的权限。 |
ControlThread |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了操作线程的权限。 |
Execution |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了执行代码的权限。 |
Flags |
已过时.
已过时.
获取或设置构成 SecurityPermission 权限的所有权限标志。 |
Infrastructure |
已过时.
已过时.
获取或设置一个值,该值指示代码是否可以插入公共语言运行时基础结构中,例如添加远程上下文接收器、特使接收器和动态接收器。 |
RemotingConfiguration |
已过时.
已过时.
获取或设置一个值,该值指示代码是否可以配置远程处理类型和信道。 |
SerializationFormatter |
已过时.
已过时.
获取或设置一个值,该值指示代码是否可以使用序列化格式化程序来序列化或反序列化对象。 |
SkipVerification |
已过时.
已过时.
获取或设置一个值,该值指示是否声明跳过代码验证的权限。 |
TypeId |
已过时.
已过时.
在派生类中实现时,获取此 Attribute 的唯一标识符。 (继承自 Attribute) |
UnmanagedCode |
已过时.
已过时.
获取或设置一个值,该值指示是否声明调用非托管代码的权限。 |
Unrestricted |
已过时.
已过时.
获取或设置一个值,该值指示是否声明了对受该特性保护的资源有完全(无限制的)权限。 (继承自 SecurityAttribute) |
方法
CreatePermission() |
已过时.
已过时.
创建并返回一个新的 SecurityPermission。 |
Equals(Object) |
已过时.
已过时.
返回一个值,该值指示此实例是否与指定的对象相等。 (继承自 Attribute) |
GetHashCode() |
已过时.
已过时.
返回此实例的哈希代码。 (继承自 Attribute) |
GetType() |
已过时.
已过时.
获取当前实例的 Type。 (继承自 Object) |
IsDefaultAttribute() |
已过时.
已过时.
在派生类中重写时,指示此实例的值是否是派生类的默认值。 (继承自 Attribute) |
Match(Object) |
已过时.
已过时.
当在派生类中重写时,返回一个指示此实例是否等于指定对象的值。 (继承自 Attribute) |
MemberwiseClone() |
已过时.
已过时.
创建当前 Object 的浅表副本。 (继承自 Object) |
ToString() |
已过时.
已过时.
返回表示当前对象的字符串。 (继承自 Object) |
显式接口实现
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
已过时.
已过时.
将一组名称映射为对应的一组调度标识符。 (继承自 Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
已过时.
已过时.
检索对象的类型信息,然后可以使用该信息获取接口的类型信息。 (继承自 Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
已过时.
已过时.
检索对象提供的类型信息接口的数量(0 或 1)。 (继承自 Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
已过时.
已过时.
提供对某一对象公开的属性和方法的访问。 (继承自 Attribute) |
适用于
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈