SecurityPermissionAttribute Clase

Definición

Precaución

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

Precaución

CAS support is not available with Silverlight applications.

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.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
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 que se permite depende del SecurityAction que 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 permiso 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, tal 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.
Obsoletos.

Inicializa una nueva instancia de la clase SecurityPermissionAttribute con el objeto SecurityAction especificado.

Propiedades

Action
Obsoletos.
Obsoletos.

Obtiene o establece una acción de seguridad.

(Heredado de SecurityAttribute)
Assertion
Obsoletos.
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.
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.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para manipular AppDomain.

ControlDomainPolicy
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para alterar o manipular directivas de seguridad de dominio.

ControlEvidence
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para alterar o manipular la evidencia.

ControlPolicy
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para ver y manipular directivas de seguridad.

ControlPrincipal
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para manipular la entidad de seguridad actual.

ControlThread
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para manipular subprocesos.

Execution
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para ejecutar código.

Flags
Obsoletos.
Obsoletos.

Obtiene o establece todos los indicadores de permiso que incluya los permisos SecurityPermission.

Infrastructure
Obsoletos.
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.
Obsoletos.

Obtiene o establece un valor que indica si el código puede configurar tipos y canales remotos.

SerializationFormatter
Obsoletos.
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.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para omitir la comprobación del código.

TypeId
Obsoletos.
Obsoletos.

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)
UnmanagedCode
Obsoletos.
Obsoletos.

Obtiene o establece un valor que indica si se declara el permiso para llamar a código no administrado.

Unrestricted
Obsoletos.
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.
Obsoletos.

Crea y devuelve un nuevo objeto SecurityPermission.

Equals(Object)
Obsoletos.
Obsoletos.

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()
Obsoletos.
Obsoletos.

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()
Obsoletos.
Obsoletos.

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()
Obsoletos.
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.
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.
Obsoletos.

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()
Obsoletos.
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.
Obsoletos.

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)
Obsoletos.
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.
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.
Obsoletos.

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a

Consulte también