StrongNameIdentityPermissionAttribute Clase

Definición

Precaución

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

Permite acciones de seguridad de StrongNameIdentityPermission para que se apliquen al código mediante seguridad declarativa. Esta clase no puede heredarse.

public ref class StrongNameIdentityPermissionAttribute 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)]
public sealed class StrongNameIdentityPermissionAttribute : 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 StrongNameIdentityPermissionAttribute : 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 StrongNameIdentityPermissionAttribute : 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 StrongNameIdentityPermissionAttribute : 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)>]
type StrongNameIdentityPermissionAttribute = 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.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type StrongNameIdentityPermissionAttribute = 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 StrongNameIdentityPermissionAttribute = 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 StrongNameIdentityPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class StrongNameIdentityPermissionAttribute
Inherits CodeAccessSecurityAttribute
Herencia
StrongNameIdentityPermissionAttribute
Atributos

Comentarios

Importante

Ya no se admite código de confianza parcial. Este atributo no tiene ningún efecto en .NET Core.

Importante

A partir de la .NET Framework 4, no se usan los permisos de identidad.

En las versiones 1.0 y 1.1 de .NET Framework, las demandas de los permisos de identidad son efectivas, incluso cuando el ensamblado que realiza la llamada es de plena confianza. Es decir, aunque el ensamblado de llamada tiene plena confianza, se produce un error en la demanda de un permiso de identidad si el ensamblado no cumple los criterios solicitados. En la .NET Framework versión 2.0 y posteriores, las demandas de permisos de identidad son ineficaces si el ensamblado de llamada tiene plena confianza. Esto garantiza la coherencia de todos los permisos, lo que elimina el tratamiento de los permisos de identidad como caso especial.

El ámbito de la declaración que se permite depende del SecurityAction que se use. Para obtener la cadena de clave de este atributo, ejecute la herramienta De nombre seguro (Sn.exe) con las opciones de token y clave pública (Sn -tp keyfile) en un archivo que tenga una firma Authenticode). Para obtener más información, consulte Sn.exe (Herramienta de nombre seguro).

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.

El StrongNameIdentityPermissionAttribute atributo se puede usar para definir requisitos de nombre seguro para el acceso a los miembros públicos en el nivel de ensamblado. En la .NET Framework versión 2.0 y posteriores, también puede usar el InternalsVisibleToAttribute atributo para especificar que todos los tipos no públicos de ese ensamblado son visibles para otro ensamblado. Para obtener más información, consulte Ensamblados de confianza.

Constructores

StrongNameIdentityPermissionAttribute(SecurityAction)

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

Propiedades

Action

Obtiene o establece una acción de seguridad.

(Heredado de SecurityAttribute)
Name

Obtiene o establece el nombre de la identidad de nombre seguro.

PublicKey

Obtiene o establece el valor de clave pública de la identidad de nombre seguro expresada como una cadena hexadecimal.

TypeId

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

(Heredado de Attribute)
Unrestricted

Obtiene o establece un valor que indica si se declara el permiso completo (sin restricciones) al recurso protegido por el atributo.

(Heredado de SecurityAttribute)
Version

Obtiene o establece la versión de la identidad de nombre seguro.

Métodos

CreatePermission()

Crea y devuelve un nuevo objeto StrongNameIdentityPermission.

Equals(Object)

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

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

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)

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()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

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

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

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)

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)

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

(Heredado de Attribute)

Se aplica a

Consulte también