Claim Třída

Definice

Představuje deklaraci identity.

public ref class Claim
public class Claim
[System.Serializable]
public class Claim
type Claim = class
[<System.Serializable>]
type Claim = class
Public Class Claim
Dědičnost
Claim
Atributy

Příklady

Následující příklad extrahuje deklarace identity přidružené k ověřenému uživateli provádějícímu požadavek HTTP a zapíše je do odpovědi HTTP. Aktuální uživatel se načte z HttpContext as a deklarace identity se z něj načtou ClaimsPrincipal . Deklarace identity se pak zapíšou do objektu 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>");  
   }  

}  

Poznámky

Deklarace identity je prohlášení vystavitele o předmětu. Deklarace identity představují atributy předmětu, které jsou užitečné v kontextu operací ověřování a autorizace. Subjekty i vystavitely jsou entity, které jsou součástí scénáře identity. Mezi typické příklady předmětu patří: uživatel, aplikace nebo služba, zařízení nebo počítač. Mezi typické příklady vystavitele patří: operační systém, aplikace, služba, zprostředkovatel role, zprostředkovatel identity nebo federační zprostředkovatel. Vystavitel doručuje deklarace identity vydáváním tokenů zabezpečení, obvykle prostřednictvím služby tokenů zabezpečení (STS). (Ve WIF můžete vytvořit sts odvozením z SecurityTokenService třídy .) V některých případech je možné kolekci deklarací přijatých od vystavitele rozšířit o atributy subjektu uložené přímo u prostředku. Vyhodnocením deklarace identity je možné určit přístupová práva k datům a dalším zabezpečeným prostředkům během procesu autorizace a lze ji také použít k rozhodování nebo vyjádření rozhodnutí o ověření subjektu.

Počínaje rozhraním .NET 4.5 byly třídy TECHNOLOGIE WINDOWS Identity Foundation (WIF), které implementují identitu založenou na deklarací identity, plně integrovány do rozhraní .NET Framework. Koncept deklarací identity je implementovaný Claim třídou .

Následující popis popisuje důležité vlastnosti Claim třídy :

  • Vlastnost Type je řetězec (obvykle identifikátor URI), který obsahuje sémantické informace o deklaraci identity. Sděluje, co znamená hodnota deklarace identity. Například deklarace identity typu GivenName ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname") představuje jméno uživatele. Hodnota Type vlastnosti může být jedním ze známých typů deklarací identity definovaných ve ClaimTypes třídě nebo to může být libovolný identifikátor URI definovaný vystavitelem. Například typ deklarace identity "urn:spendinglimit" může představovat atribut uživatele, který dává smysl v obchodním kontextu vystavitele.

  • Vlastnost Value obsahuje hodnotu deklarace identity. Za účelem omezení závislostí a zjednodušení správy je ve WIF hodnota deklarace identity reprezentována pouze jako řetězec. U složitějších hodnotových typů se doporučuje použít standardní typy schématu XML k označení, jak je hodnota serializována a deserializována z řetězce.

  • Vlastnost ValueType obsahuje řetězec, který identifikuje informace o typu pro hodnotu. Tato vlastnost by měla být použita k pochopení formátu hodnoty a k poskytnutí informací o tom, jak ji deserializovat. Pokud vaše řešení vyžaduje komplexní typy hodnot, doporučuje se použít standardní typy schématu XML ve ValueType vlastnosti k určení způsobu, jakým Value má být vlastnost serializována a deserializována z řetězce.

  • Vlastnost Subject je ClaimsIdentity objekt, který představuje předmět deklarace identity. Předmětem deklarace identity je entita (obvykle uživatel, který žádá o přístup k prostředku), o které se deklarace deklarace uplatňuje. Obsahuje ClaimsIdentity mezi svými vlastnostmi kolekci deklarací identity, které popisují vlastnosti a atributy předmětu, jak je potvrzuje jeden nebo více vystavitelů.

  • Vlastnost Issuer obsahuje název entity, která deklaraci identity vydala. Vystavitel deklarace identity je ve WIF reprezentován řetězcem, který obsahuje název ze seznamu známých vystavitelů, který spravuje registr názvů vystavitelů. Registr názvů vystavitelů je instance třídy, která je odvozena od IssuerNameRegistry třídy . Registr názvů vystavitelů přidruží mnemotechnický název k kryptografickému materiálu potřebnému k ověření podpisů tokenů vytvořených odpovídajícím vystavitelem. Například třída, ConfigurationBasedIssuerNameRegistry která je k dispozici po použití rozhraní .NET 4.5, přidruží mnemotechnický název každého vystavitele k odpovídajícímu certifikátu X.509. Seznam známých vystavitelů obvykle sestavuje registr názvů vystavitelů při spuštění. Seznam používaný objektem ConfigurationBasedIssuerNameRegistry je určen v konfiguračním souboru aplikace.

  • Vlastnost OriginalIssuer obsahuje název entity, která původně deklaraci identity vydala. Tato vlastnost je navržena tak, aby usnadnila scénáře, kdy deklarace identity může projít více vystavitelů před tím, než ji klient předloží aplikaci poskytovatele prostředků; například scénáře federace. Můžete prozkoumat vlastnost a OriginalIssuer určit entitu, která původně deklaraci identity vystavila. Název je převzat ze seznamu známých vystavitelů, kteří jsou spravováni registrem názvů vystavitelů Issuer , stejně jako v případě vlastnosti.

Konstruktory

Claim(BinaryReader)

Inicializuje instanci Claim se zadaným BinaryReaderparametrem .

Claim(BinaryReader, ClaimsIdentity)

Inicializuje novou instanci Claim třídy se zadaným čtenářem a subjektem.

Claim(Claim)

Inicializuje novou instanci Claim třídy .

Claim(Claim, ClaimsIdentity)

Inicializuje novou instanci Claim třídy se zadanou deklarací zabezpečení a předmětem.

Claim(String, String)

Inicializuje novou instanci Claim třídy se zadaným typem deklarace identity a hodnotou.

Claim(String, String, String)

Inicializuje novou instanci Claim třídy se zadaným typem deklarace identity, hodnotou a typem hodnoty.

Claim(String, String, String, String)

Inicializuje novou instanci Claim třídy se zadaným typem deklarace identity, hodnotou, typem hodnoty a vystavitelem.

Claim(String, String, String, String, String)

Inicializuje novou instanci Claim třídy se zadaným typem deklarace identity, hodnotou, typem hodnoty, vystavitelem a původním vystavitelem.

Claim(String, String, String, String, String, ClaimsIdentity)

Inicializuje novou instanci Claim třídy se zadaným typem deklarace identity, hodnotou, typem hodnoty, vystavitelem, původním vystavitelem a subjektem.

Vlastnosti

CustomSerializationData

Obsahuje všechna další data poskytnutá odvozeným typem.

Issuer

Získá vystavitele deklarace identity.

OriginalIssuer

Získá původní vystavitele deklarace identity.

Properties

Získá slovník, který obsahuje další vlastnosti přidružené k této deklaraci identity.

Subject

Získá předmět žádosti.

Type

Získá typ deklarace identity.

Value

Získá hodnotu deklarace identity.

ValueType

Získá typ hodnoty deklarace identity.

Metody

Clone()

Vrátí nový Claim objekt zkopírovaný z tohoto objektu. Nová deklarace identity nemá předmět.

Clone(ClaimsIdentity)

Vrátí nový Claim objekt zkopírovaný z tohoto objektu. Předmět nové deklarace identity se nastaví na zadanou deklaraci identity.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězcovou reprezentaci tohoto Claim objektu.

WriteTo(BinaryWriter)

Zapíše to Claim spisovateli.

WriteTo(BinaryWriter, Byte[])

Zapíše to Claim spisovateli.

Platí pro

Viz také