ClaimsIdentity Clase

Definición

Representa una identidad basada en notificaciones.

public ref class ClaimsIdentity : System::Security::Principal::IIdentity
public class ClaimsIdentity : System.Security.Principal.IIdentity
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class ClaimsIdentity : System.Security.Principal.IIdentity
type ClaimsIdentity = class
    interface IIdentity
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type ClaimsIdentity = class
    interface IIdentity
Public Class ClaimsIdentity
Implements IIdentity
Herencia
ClaimsIdentity
Derivado
Atributos
Implementaciones

Comentarios

La ClaimsIdentity clase es una implementación concreta de una identidad basada en notificaciones; es decir, una identidad descrita por una colección de notificaciones. Una notificación es una instrucción sobre una entidad realizada por un emisor que describe una propiedad, un derecho o alguna otra calidad de esa entidad. Se dice que dicha entidad es el sujeto de la reclamación. Una notificación se representa mediante la Claim clase . Las notificaciones contenidas en un ClaimsIdentity describen la entidad que representa la identidad correspondiente y se pueden usar para tomar decisiones de autorización y autenticación. Un modelo de acceso basado en notificaciones tiene muchas ventajas sobre los modelos de acceso más tradicionales que se basan exclusivamente en roles. Por ejemplo, las notificaciones pueden proporcionar información mucho más completa sobre la identidad que representan y se pueden evaluar para la autorización o la autenticación de una manera mucho más específica.

A partir de .NET Framework 4.5, Windows Identity Foundation (WIF) y la identidad basada en notificaciones se han integrado completamente en .NET Framework. Esto significa que muchas clases que representan una identidad en .NET Framework ahora derivan de ClaimsIdentity y describen sus propiedades a través de una colección de notificaciones. Esto es diferente de las versiones anteriores de .NET Framework, en las que estas clases implementaron la IIdentity interfaz directamente. Se puede acceder a la colección de notificaciones que describen la identidad a través de la Claims propiedad . La ClaimsIdentity clase proporciona varios métodos para buscar y modificar notificaciones y es totalmente compatible con consultas integradas de lenguaje (LINQ). En el código de aplicación, ClaimsIdentity normalmente se obtiene acceso a los objetos a través ClaimsPrincipal de objetos; por ejemplo, la entidad de seguridad devuelta por Thread.CurrentPrincipal.

Nota

La ClaimsPrincipal clase también tiene una Claims propiedad . En la mayoría de los casos, debe tener acceso a las notificaciones del usuario a través de la ClaimsPrincipal.Claims colección en lugar de a través de la Claims colección. Tendrá que acceder a las notificaciones de un individuo ClaimsIdentity solo en los casos en los que la entidad de seguridad contenga más de una ClaimsIdentity y tenga que evaluar o modificar una identidad específica.

Importante

Para agregar o quitar notificaciones de la Claims colección, un llamador debe tener plena confianza.

En el modelo basado en notificaciones, la IIdentity.Name propiedad y el IPrincipal.IsInRole(String) método se implementan mediante la evaluación de las notificaciones contenidas por una identidad. La propiedad y el ClaimsPrincipal.IsInRole método proporcionan las ClaimsIdentity.Name implementaciones base en el modelo basado en notificaciones. Las NameClaimType propiedades y RoleClaimType permiten especificar un tipo de notificación que se debe usar para evaluar las notificaciones contenidas por la identidad al realizar estas operaciones.

Los escenarios de delegación se admiten mediante las Actor propiedades y BootstrapContext .

Constructores

ClaimsIdentity()

Inicializa una nueva instancia de la clase ClaimsIdentity con una colección de reclamaciones vacía.

ClaimsIdentity(BinaryReader)

Inicializa una instancia de ClaimsIdentity con BinaryReader especificado.

ClaimsIdentity(ClaimsIdentity)

Inicializa una nueva instancia de la clase ClaimsIdentity a partir de una instancia ClaimsIdentity existente.

ClaimsIdentity(IEnumerable<Claim>)

Inicializa una nueva instancia de la clase ClaimsIdentity usando una colección enumerada de objetos Claim.

ClaimsIdentity(IEnumerable<Claim>, String)

Inicializa una nueva instancia de la clase ClaimsIdentity con las reclamaciones y tipo de autenticación especificados.

ClaimsIdentity(IEnumerable<Claim>, String, String, String)

Inicializa una nueva instancia de la clase ClaimsIdentity donde se especifican las notificaciones, el tipo de autenticación, el tipo de notificación de nombre y el tipo de notificación de rol.

ClaimsIdentity(IIdentity)

Inicializa una nueva instancia de la clase ClaimsIdentity usando el tipo de nombre y autenticación a partir del IIdentity especificado.

ClaimsIdentity(IIdentity, IEnumerable<Claim>)

Inicializa una nueva instancia de la clase ClaimsIdentity usando las reclamaciones especificadas y el IIdentity especificado.

ClaimsIdentity(IIdentity, IEnumerable<Claim>, String, String, String)

Inicializa una nueva instancia de la clase ClaimsIdentity a partir de la IIdentity especificada y usa las notificaciones, tipo de autenticación, tipo de notificación de nombre y tipo de notificación de rol especificados.

ClaimsIdentity(SerializationInfo)
Obsoletos.

Inicializa una nueva instancia de la clase ClaimsIdentity a partir de una secuencia serializada creada mediante ISerializable.

ClaimsIdentity(SerializationInfo, StreamingContext)
Obsoletos.

Inicializa una nueva instancia de la clase ClaimsIdentity a partir de una secuencia serializada creada mediante ISerializable.

ClaimsIdentity(String)

Inicializa una nueva instancia de la clase ClaimsIdentity con una colección de notificaciones vacía y el tipo de autenticación especificado.

ClaimsIdentity(String, String, String)

Inicializa una nueva instancia de la clase ClaimsIdentity con el tipo de autenticación, tipo de reclamación de nombre y tipo de reclamación de rol especificados.

Campos

DefaultIssuer

Emisor predeterminado; "LOCAL AUTHORITY".

DefaultNameClaimType

Tipo de notificación de nombre predeterminado; Name.

DefaultRoleClaimType

Tipo de notificación de rol predeterminado; Role.

Propiedades

Actor

Obtiene o establece la identidad del usuario que llama al que se han concedido derechos de delegación.

AuthenticationType

Obtiene el tipo de autenticación.

BootstrapContext

Obtiene o establece el token que se usó para crear estas notificaciones de identidad.

Claims

Obtiene las notificaciones asociadas con esta identidad de notificación.

CustomSerializationData

Contiene datos adicionales proporcionados por un tipo derivado. Se establece normalmente cuando se llama a WriteTo(BinaryWriter, Byte[]).

IsAuthenticated

Obtiene un valor que indica si la identidad se ha autenticado.

Label

Obtiene o establece la etiqueta para esta identidad de notificaciones.

Name

Obtiene el nombre de esta identidad de notificación.

NameClaimType

Obtiene el tipo de notificación que se usa para determinar qué notificaciones proporcionan el valor de la propiedad Name de esta identidad de notificación.

RoleClaimType

Obtiene el tipo de notificación que se interpreta como rol de .NET entre las notificaciones en esta identidad de notificación.

Métodos

AddClaim(Claim)

Agrega una sola reclamación a esta identidad de reclamaciones.

AddClaims(IEnumerable<Claim>)

Agrega una lista de reclamaciones a esta identidad de reclamaciones.

Clone()

Devuelve un objeto ClaimsIdentity nuevo copiado de esta identidad de reclamaciones.

CreateClaim(BinaryReader)

Proporciona un punto de extensibilidad para tipos derivados para crear un Claim personalizado.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
FindAll(Predicate<Claim>)

Recupera todas las notificaciones que coinciden con el predicado especificado.

FindAll(String)

Recupera todas las notificaciones con el tipo de notificación especificado.

FindFirst(Predicate<Claim>)

Recupera la primera reclamación con la que coincide el predicado especificado.

FindFirst(String)

Recupera la primera reclamación con el tipo especificado.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetObjectData(SerializationInfo, StreamingContext)

Rellena el objeto SerializationInfo con los datos necesarios para serializar el objeto ClaimsIdentity actual.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
HasClaim(Predicate<Claim>)

Determina si esta identidad de notificaciones tiene una notificación que coincide con el predicado especificado.

HasClaim(String, String)

Determina si esta identidad de notificaciones tiene una notificación con el tipo y el valor especificados.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
RemoveClaim(Claim)

Se intenta quitar una reclamación de la identidad de reclamaciones.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
TryRemoveClaim(Claim)

Se intenta quitar una reclamación de la identidad de reclamaciones.

WriteTo(BinaryWriter)

Se serializa usando un BinaryWriter.

WriteTo(BinaryWriter, Byte[])

Se serializa usando un BinaryWriter.

Se aplica a

Consulte también