Claim Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta un'attestazione.
public ref class Claim
public class Claim
[System.Serializable]
public class Claim
type Claim = class
[<System.Serializable>]
type Claim = class
Public Class Claim
- Ereditarietà
-
Claim
- Attributi
Esempio
Nell'esempio seguente vengono estratte le attestazioni associate all'utente autenticato che esegue una richiesta HTTP e le scrive nella risposta HTTP. L'utente corrente viene letto da HttpContext come e ClaimsPrincipal le attestazioni vengono lette da esso. Le attestazioni vengono quindi scritte nell'oggetto HttpResponse .
ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal;
if (null != principal)
{
foreach (Claim claim in principal.Claims)
{
Response.Write("CLAIM TYPE: " + claim.Type + "; CLAIM VALUE: " + claim.Value + "</br>");
}
}
Commenti
Un'attestazione è un'istruzione relativa a un soggetto da un'autorità emittente. Le attestazioni rappresentano gli attributi dell'oggetto utili nel contesto delle operazioni di autenticazione e autorizzazione. I soggetti e le autorità emittenti sono entrambe entità che fanno parte di uno scenario di identità. Alcuni esempi tipici di un oggetto sono: un utente, un'applicazione o un servizio, un dispositivo o un computer. Alcuni esempi tipici di un'autorità emittente sono: il sistema operativo, un'applicazione, un servizio, un provider di ruoli, un provider di identità o un provider federativo. Un'autorità emittente distribuisce attestazioni emettendo token di sicurezza, in genere tramite un servizio token di sicurezza . In alcuni casi, la raccolta di attestazioni ricevute da un'autorità emittente può essere estesa da attributi oggetto archiviati direttamente nella risorsa. Un'attestazione può essere valutata per determinare i diritti di accesso ai dati e altre risorse protette durante il processo di autorizzazione e può essere usata anche per prendere o esprimere decisioni di autenticazione su un soggetto.
A partire da .NET Framework 4.5, le classi windows Identity Foundation (WIF) che implementano l'identità basata sulle attestazioni sono state completamente integrate in .NET Framework. Il concetto di attestazioni viene implementato dalla Claim classe .
Di seguito vengono descritte le proprietà importanti della Claim classe :
La Type proprietà è una stringa (in genere un URI) che contiene le informazioni semantiche sull'attestazione. Indica il valore dell'attestazione. Ad esempio, un'attestazione con un tipo di attestazione (GivenName
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname") rappresenta il nome di un utente. Il valore della Type proprietà può essere uno dei tipi di attestazione noti definiti nella ClaimTypes classe oppure può essere un URI arbitrario definito dall'emittente. Ad esempio, un tipo di attestazione "urn:spendinglimit" può rappresentare un attributo utente che ha senso all'interno del contesto aziendale dell'emittente.La Value proprietà contiene il valore dell'attestazione. Per ridurre le dipendenze e semplificare l'amministrazione, in WIF il valore di un'attestazione è rappresentato solo come stringa. Per i tipi valore più complessi, è consigliabile utilizzare tipi di XML Schema standard per indicare come deve essere serializzato e deserializzato da una stringa.
La ValueType proprietà contiene una stringa che identifica le informazioni sul tipo per il valore. Questa proprietà deve essere usata per comprendere il formato del valore e per fornire informazioni su come deserializzarla. Se la soluzione richiede tipi valore complessi, è consigliabile utilizzare tipi di XML Schema standard nella ValueType proprietà per indicare come serializzare e deserializzare la Value proprietà da una stringa.
La Subject proprietà è un ClaimsIdentity oggetto che rappresenta l'oggetto dell'attestazione. L'oggetto dell'attestazione è l'entità (in genere l'utente che richiede l'accesso a una risorsa) su cui viene asserta l'attestazione. ClaimsIdentity Contiene, tra le relative proprietà, una raccolta di attestazioni che descrivono le proprietà e gli attributi del soggetto come attestati da uno o più emittenti.
La Issuer proprietà contiene il nome dell'entità che ha emesso l'attestazione. L'autorità emittente di un'attestazione è rappresentata in WIF da una stringa che contiene un nome tratto da un elenco di autorità emittenti note gestite dal registro dei nomi dell'autorità emittente. Il registro dei nomi dell'autorità emittente è un'istanza di una classe che deriva dalla IssuerNameRegistry classe . Il registro dei nomi dell'autorità emittente associa un nome mnemonico al materiale crittografico necessario per verificare le firme dei token prodotti dall'emittente corrispondente. Ad esempio, la ConfigurationBasedIssuerNameRegistry classe, disponibile come predefinita con .NET 4.5, associa il nome mnemonico per ogni autorità emittente al certificato X.509 corrispondente. L'elenco di autorità emittenti note viene in genere compilato in fase di avvio dal registro dei nomi dell'autorità emittente. L'elenco ConfigurationBasedIssuerNameRegistry utilizzato da viene specificato nel file di configurazione dell'applicazione.
La OriginalIssuer proprietà contiene il nome dell'entità che ha originariamente emesso l'attestazione. Questa proprietà è progettata per facilitare gli scenari in cui un'attestazione può passare attraverso più emittenti prima che venga presentata dal client all'applicazione rp; ad esempio scenari di federazione. È possibile esaminare la OriginalIssuer proprietà per determinare l'entità che ha originariamente emesso l'attestazione. Il nome viene ricavato dall'elenco di autorità emittenti note gestite dal registro dei nomi dell'autorità emittente, come nel caso della Issuer proprietà .
Costruttori
| Nome | Descrizione |
|---|---|
| Claim(BinaryReader, ClaimsIdentity) |
Inizializza una nuova istanza della Claim classe con il lettore e l'oggetto specificati. |
| Claim(BinaryReader) |
Inizializza un'istanza di Claim con l'oggetto specificato BinaryReader. |
| Claim(Claim, ClaimsIdentity) |
Inizializza una nuova istanza della Claim classe con l'attestazione di sicurezza e l'oggetto specificati. |
| Claim(Claim) |
Inizializza una nuova istanza della classe Claim. |
| Claim(String, String, String, String, String, ClaimsIdentity) |
Inizializza una nuova istanza della Claim classe con il tipo di attestazione, il valore, il tipo valore, l'autorità emittente, l'autorità emittente originale e l'oggetto specificati. |
| Claim(String, String, String, String, String) |
Inizializza una nuova istanza della Claim classe con il tipo di attestazione, il valore, il tipo valore, l'autorità emittente originale specificati. |
| Claim(String, String, String, String) |
Inizializza una nuova istanza della Claim classe con il tipo di attestazione, il valore, il tipo di valore e l'autorità di certificazione specificati. |
| Claim(String, String, String) |
Inizializza una nuova istanza della Claim classe con il tipo di attestazione, il valore e il tipo di valore specificati. |
| Claim(String, String) |
Inizializza una nuova istanza della Claim classe con il tipo di attestazione e il valore specificati. |
Proprietà
| Nome | Descrizione |
|---|---|
| CustomSerializationData |
Contiene eventuali dati aggiuntivi forniti da un tipo derivato. |
| Issuer |
Ottiene l'autorità di certificazione dell'attestazione. |
| OriginalIssuer |
Ottiene l'autorità di certificazione originale dell'attestazione. |
| Properties |
Ottiene un dizionario che contiene proprietà aggiuntive associate a questa attestazione. |
| Subject |
Ottiene l'oggetto dell'attestazione. |
| Type |
Ottiene il tipo di attestazione dell'attestazione. |
| Value |
Ottiene il valore dell'attestazione. |
| ValueType |
Ottiene il tipo di valore dell'attestazione. |
Metodi
| Nome | Descrizione |
|---|---|
| Clone() |
Restituisce un nuovo Claim oggetto copiato da questo oggetto. La nuova attestazione non ha un oggetto. |
| Clone(ClaimsIdentity) |
Restituisce un nuovo Claim oggetto copiato da questo oggetto. L'oggetto della nuova attestazione viene impostato sull'oggetto ClaimsIdentity specificato. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce una rappresentazione di stringa di questo Claim oggetto. |
| WriteTo(BinaryWriter, Byte[]) |
Scrive l'oggetto Claim nel writer. |
| WriteTo(BinaryWriter) |
Scrive l'oggetto Claim nel writer. |