PrincipalPermissionAttribute 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í.
Permite aplicar acciones de seguridad al PrincipalPermission código mediante seguridad declarativa. Esta clase no puede heredarse.
public ref class PrincipalPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class PrincipalPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class PrincipalPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
type PrincipalPermissionAttribute = class
inherit CodeAccessSecurityAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type PrincipalPermissionAttribute = class
inherit CodeAccessSecurityAttribute
Public NotInheritable Class PrincipalPermissionAttribute
Inherits CodeAccessSecurityAttribute
- Herencia
- 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.
PrincipalPermissionAttribute se puede usar para exigir mediante declaración que los usuarios que ejecutan el código pertenezcan a un rol especificado o se hayan autenticado. El uso de Unrestricted crea un PrincipalPermission con establecido true en Authenticated y Name y Role establecido en null.
El ámbito de la declaración que se permite depende del SecurityAction que se use. PrincipalPermissionAttribute no se puede aplicar en el nivel de ensamblado.
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.
Importante
Antes de usar esta clase para exigir permiso de entidad de seguridad, debe establecer la directiva principal del dominio de aplicación actual en el valor WindowsPrincipalde enumeración . De forma predeterminada, la directiva de entidad de seguridad se establece en UnauthenticatedPrincipal. Si no establece la directiva WindowsPrincipalde entidad de seguridad en , se producirá un error en una demanda de permisos de entidad de seguridad. El código siguiente debe ejecutarse antes de que se solicite el permiso de entidad de seguridad: AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal).
Constructores
| Nombre | Description |
|---|---|
| PrincipalPermissionAttribute(SecurityAction) |
Inicializa una nueva instancia de la PrincipalPermissionAttribute clase con el especificado SecurityAction. |
Propiedades
| Nombre | Description |
|---|---|
| Action |
Obtiene o establece una acción de seguridad. (Heredado de SecurityAttribute) |
| Authenticated |
Obtiene o establece un valor que indica si el proveedor de seguridad basado en rol subyacente ha autenticado la entidad de seguridad actual. |
| Name |
Obtiene o establece el nombre de la identidad asociada a la entidad de seguridad actual. |
| Role |
Obtiene o establece la pertenencia a un rol de seguridad especificado. |
| 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) para el recurso protegido por el atributo. (Heredado de SecurityAttribute) |
Métodos
| Nombre | Description |
|---|---|
| CreatePermission() |
Crea y devuelve un nuevo PrincipalPermission. |
| Equals(Object) |
Devuelve un valor que indica si esta instancia es igual a 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() |
Cuando 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 reemplaza 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 Objectactual. (Heredado de Object) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| _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) |
Recupera la información de tipo de un objeto, que se puede usar para obtener la información de tipo 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 propiedades y métodos expuestos por un objeto . (Heredado de Attribute) |