SecurityPermissionAttribute Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Precaución
Code Access Security is not supported or honored by the runtime.
Permite acciones de seguridad de SecurityPermission para que se apliquen al código mediante seguridad declarativa. Esta clase no puede heredarse.
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.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
Public NotInheritable Class SecurityPermissionAttribute
Inherits CodeAccessSecurityAttribute
- Herencia
- Atributos
Comentarios
Precaución
La seguridad de acceso del código (CAS) ha quedado en desuso en todas las versiones de .NET Framework y .NET. Las versiones recientes de .NET no respetan las anotaciones de CAS y generan errores si se usan API relacionadas con CAS. Los desarrolladores deben buscar medios alternativos para realizar tareas de seguridad.
El ámbito de la declaración permitida depende de que SecurityAction se use .
La información de seguridad declarada por un atributo de seguridad se almacena en los metadatos del destino del atributo y el sistema accede a ella en tiempo de ejecución. Los atributos de seguridad solo se usan para la seguridad declarativa. Para la seguridad imperativa, use la clase de permisos correspondiente.
Cuando use la SecurityPermissionAttribute clase , siga la acción de seguridad con los permisos que se solicitan. Cada permiso de seguridad que se puede solicitar, como se define en la SecurityPermissionFlag enumeración, tiene una propiedad correspondiente en la SecurityPermissionAttribute clase . Por ejemplo, para exigir la capacidad de acceder al código no administrado, siga la instrucción demand con el valor de propiedad que se solicita, como se indica a continuación: SecurityPermissionAttribute(SecurityAction.Demand, UnmanagedCode=true)
.
Nota
Una excepción a la equivalencia entre la SecurityPermissionFlag enumeración y las SecurityPermissionAttribute propiedades es que el AllFlags valor de enumeración se representa mediante la Unrestricted propiedad (heredada de la SecurityAttribute clase ). Para exigir todos los permisos de seguridad, especifique Unrestricted=true
.
Constructores
SecurityPermissionAttribute(SecurityAction) |
Obsoletos.
Inicializa una nueva instancia de la clase SecurityPermissionAttribute con el objeto SecurityAction especificado. |
Propiedades
Action |
Obsoletos.
Obtiene o establece una acción de seguridad. (Heredado de SecurityAttribute) |
Assertion |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para validar que todos los autores de llamada a este código tienen el permiso necesario para la operación. |
BindingRedirects |
Obsoletos.
Obtiene o establece un valor que indica si el código tiene permiso para realizar la redirección de enlaces del archivo de configuración de la aplicación. |
ControlAppDomain |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para manipular AppDomain. |
ControlDomainPolicy |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para alterar o manipular directivas de seguridad de dominio. |
ControlEvidence |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para alterar o manipular la evidencia. |
ControlPolicy |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para ver y manipular directivas de seguridad. |
ControlPrincipal |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para manipular la entidad de seguridad actual. |
ControlThread |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para manipular subprocesos. |
Execution |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para ejecutar código. |
Flags |
Obsoletos.
Obtiene o establece todos los indicadores de permiso que incluya los permisos SecurityPermission. |
Infrastructure |
Obsoletos.
Obtiene o establece un valor que indica si el código se puede conectar a la infraestructura de Common Language Runtime, por ejemplo, para agregar receptores de contexto remoto, receptores de envío y receptores dinámicos. |
RemotingConfiguration |
Obsoletos.
Obtiene o establece un valor que indica si el código puede configurar tipos y canales remotos. |
SerializationFormatter |
Obsoletos.
Obtiene o establece un valor que indica si el código puede utilizar un formateador de serialización para serializar o deserializar un objeto. |
SkipVerification |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para omitir la comprobación del código. |
TypeId |
Obsoletos.
Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute. (Heredado de Attribute) |
UnmanagedCode |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso para llamar a código no administrado. |
Unrestricted |
Obsoletos.
Obtiene o establece un valor que indica si se declara el permiso completo (sin restricciones) al recurso protegido por el atributo. (Heredado de SecurityAttribute) |
Métodos
CreatePermission() |
Obsoletos.
Crea y devuelve un nuevo objeto SecurityPermission. |
Equals(Object) |
Obsoletos.
Devuelve un valor que indica si esta instancia es igual que un objeto especificado. (Heredado de Attribute) |
GetHashCode() |
Obsoletos.
Devuelve el código hash de esta instancia. (Heredado de Attribute) |
GetType() |
Obsoletos.
Obtiene el Type de la instancia actual. (Heredado de Object) |
IsDefaultAttribute() |
Obsoletos.
Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada. (Heredado de Attribute) |
Match(Object) |
Obsoletos.
Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado. (Heredado de Attribute) |
MemberwiseClone() |
Obsoletos.
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Obsoletos.
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Implementaciones de interfaz explícitas
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Obsoletos.
Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Heredado de Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Obsoletos.
Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz. (Heredado de Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Obsoletos.
Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). (Heredado de Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Obsoletos.
Proporciona acceso a las propiedades y los métodos expuestos por un objeto. (Heredado de Attribute) |