StrongNameIdentityPermission Clase

Definición

Precaución

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

Define el permiso de identidad para nombres seguros. Esta clase no puede heredarse.

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

Comentarios

Caution

La seguridad de acceso al código (CAS) está en desuso en todas las versiones de .NET Framework y .NET. Las versiones recientes de .NET no respetan las anotaciones de CAS y producen errores si se utilizan las API relacionadas con CAS. Los desarrolladores deben buscar medios alternativos para realizar tareas de seguridad.

Importante

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

En las versiones 1.0 y 1.1 de .NET Framework, los permisos de identidad no pueden tener un valor de estado de permiso de Unrestricted. En la versión 2.0 y posteriores de .NET Framework, los permisos de identidad pueden tener cualquier valor de estado de permiso. Esto significa que en la versión 2.0 y versiones posteriores, los permisos de identidad tienen el mismo comportamiento que los permisos que implementan la IUnrestrictedPermission interfaz. Es decir, una demanda de una identidad siempre se realiza correctamente, independientemente de la identidad del ensamblado, si el ensamblado se ha concedido plena confianza.

Use StrongNameIdentityPermission para confirmar que el código de llamada está en un ensamblado de código con nombre seguro determinado. Las demandas completas solo se StrongNameIdentityPermission realizan correctamente si todos los ensamblados de la pila tienen la evidencia correcta para satisfacer la demanda. El vínculo exige que el StrongNameIdentityPermissionAttribute atributo se realice correctamente solo si el autor de la llamada inmediato tiene la evidencia correcta.

Una identidad de nombre seguro se basa en una clave pública criptográfica denominada un objeto binario grande (BLOB), que opcionalmente se combina con el nombre y la versión de un ensamblado específico. La clave define un espacio de nombres único y proporciona una comprobación segura de que el nombre es original, ya que la definición del nombre debe estar en un ensamblado firmado por la clave privada correspondiente.

Tenga en cuenta que la validez de la clave de nombre seguro no depende de una relación de confianza o de cualquier certificado que se emita necesariamente para la clave.

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 que realiza la llamada tenga plena confianza, se produce un error en la demanda de un permiso de identidad si el ensamblado no cumple los criterios solicitados. En la versión 2.0 y posteriores de .NET Framework, las demandas de permisos de identidad son ineficaces si el ensamblado de llamada tiene plena confianza. Esto garantiza la coherencia de todos los permisos y elimina el tratamiento de los permisos de identidad como caso especial.

Para obtener una descripción completa de los nombres seguros, consulte la StrongName página de referencia. Para obtener más información sobre los ensamblados con nombre seguro, vea Ensamblados con nombre seguro.

La StrongNameIdentityPermission clase se usa para definir requisitos de nombre seguro para acceder a los miembros públicos de un tipo. El StrongNameIdentityPermissionAttribute atributo se puede usar para definir requisitos de nombre seguro en el nivel de ensamblado. En la versión 2.0 y posteriores de .NET Framework, también puede usar el atributo InternalsVisibleToAttribute 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

Nombre Description
StrongNameIdentityPermission(PermissionState)
Obsoletos.

Inicializa una nueva instancia de la StrongNameIdentityPermission clase con el especificado PermissionState.

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)
Obsoletos.

Inicializa una nueva instancia de la StrongNameIdentityPermission clase para la identidad de nombre seguro especificada.

Propiedades

Nombre Description
Name
Obsoletos.

Obtiene o establece la parte de nombre simple de la identidad de nombre seguro.

PublicKey
Obsoletos.

Obtiene o establece el blob de clave pública que define el espacio de nombres de identidad de nombre seguro.

Version
Obsoletos.

Obtiene o establece el número de versión de la identidad.

Métodos

Nombre Description
Assert()
Obsoletos.

Declara que el código de llamada puede tener acceso al recurso protegido por una demanda de permisos a través del código que llama a este método, incluso si a los autores de llamadas superiores de la pila no se les ha concedido permiso para acceder al recurso. El uso Assert() de puede crear problemas de seguridad.

(Heredado de CodeAccessPermission)
Copy()
Obsoletos.

Crea y devuelve una copia idéntica del permiso actual.

Demand()
Obsoletos.

Fuerza un SecurityException objeto en tiempo de ejecución si no se han concedido a todos los llamadores más altos de la pila de llamadas el permiso especificado por la instancia actual.

(Heredado de CodeAccessPermission)
Deny()
Obsoletos.
Obsoletos.

Impide que los autores de llamadas más altos en la pila de llamadas usen el código que llama a este método para acceder al recurso especificado por la instancia actual.

(Heredado de CodeAccessPermission)
Equals(Object)
Obsoletos.

Determina si el objeto especificado CodeAccessPermission es igual al objeto actual CodeAccessPermission.

(Heredado de CodeAccessPermission)
FromXml(SecurityElement)
Obsoletos.

Reconstruye un permiso con un estado especificado a partir de una codificación XML.

GetHashCode()
Obsoletos.

Obtiene un código hash para el CodeAccessPermission objeto que es adecuado para su uso en algoritmos hash y estructuras de datos, como una tabla hash.

(Heredado de CodeAccessPermission)
GetType()
Obsoletos.

Obtiene el Type de la instancia actual.

(Heredado de Object)
Intersect(IPermission)
Obsoletos.

Crea y devuelve un permiso que es la intersección del permiso actual y el permiso especificado.

IsSubsetOf(IPermission)
Obsoletos.

Determina si el permiso actual es un subconjunto del permiso especificado.

MemberwiseClone()
Obsoletos.

Crea una copia superficial del Objectactual.

(Heredado de Object)
PermitOnly()
Obsoletos.

Impide que los autores de llamadas más altos en la pila de llamadas usen el código que llama a este método para acceder a todos los recursos, excepto para el recurso especificado por la instancia actual.

(Heredado de CodeAccessPermission)
ToString()
Obsoletos.

Crea y devuelve una representación de cadena del objeto de permiso actual.

(Heredado de CodeAccessPermission)
ToXml()
Obsoletos.

Crea una codificación XML del permiso y su estado actual.

Union(IPermission)
Obsoletos.

Crea un permiso que es la unión del permiso actual y el permiso especificado.

Se aplica a

Consulte también