StrongNameIdentityPermission 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.
Define el permiso de identidades de 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
- 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.
Importante
A partir de .NET Framework 4, no se usan permisos de identidad.
En las versiones 1.0 y 1.1 de .NET Framework, los permisos de identidad no pueden tener un Unrestricted valor de estado de permiso. En .NET Framework versión 2.0 y posteriores, 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 realizan StrongNameIdentityPermission correctamente si todos los ensamblados de la pila tienen la evidencia correcta para satisfacer la demanda. Link exige que el atributo use StrongNameIdentityPermissionAttribute correctamente solo si el llamador inmediato tiene la evidencia correcta.
Una identidad de nombre seguro se basa en una clave pública criptográfica denominada 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 ni de ningún certificado que se emita necesariamente para la clave.
En las versiones 1.0 y 1.1 de .NET Framework, las exigencias de los permisos de identidad son efectivas incluso cuando el ensamblado de llamada es de plena confianza. Es decir, aunque el ensamblado de 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 .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 y elimina el tratamiento de los permisos de identidad como caso especial.
Para obtener una descripción completa de los nombres seguros, consulte la página de StrongName referencia. Para obtener más información sobre los ensamblados con nombre seguro, consulte 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 .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
StrongNameIdentityPermission(PermissionState) |
Obsoletos.
Inicializa una nueva instancia de la clase StrongNameIdentityPermission con el objeto PermissionState especificado. |
StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version) |
Obsoletos.
Inicializa una nueva instancia de la clase StrongNameIdentityPermission para la identidad del nombre seguro especificado. |
Propiedades
Name |
Obsoletos.
Obtiene o establece el nombre sencillo 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
Assert() |
Obsoletos.
Declara que el código de llamada puede tener acceso al recurso protegido por una demanda de permiso a través del código que llama a este método, incluso si los autores de la llamada situados en una posición más alta de la pila no tienen permiso para tener acceso al recurso. El uso de Assert() puede crear problemas de seguridad. (Heredado de CodeAccessPermission) |
Copy() |
Obsoletos.
Crea y devuelve una copia idéntica del permiso actual. |
Demand() |
Obsoletos.
Fuerza a un SecurityException en tiempo de ejecución si todos los autores de llamada situados en la parte superior de la pila de llamadas no disponen del permiso especificado por la instancia actual. (Heredado de CodeAccessPermission) |
Deny() |
Obsoletos.
Obsoletos.
Impide que los autores de la llamada situados en la posición más alta de la pila de llamadas usen el código que llama a este método para tener acceso al recurso especificado por la instancia actual. (Heredado de CodeAccessPermission) |
Equals(Object) |
Obsoletos.
Determina si el objeto CodeAccessPermission especificado es igual al objeto CodeAccessPermission actual. (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 objeto CodeAccessPermission 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 Object actual. (Heredado de Object) |
PermitOnly() |
Obsoletos.
Impide que los llamadores situados más arriba en la pila de llamadas usen el código que llama a este método para tener acceso a todos los recursos excepto al 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. |