Sdílet prostřednictvím


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 objektu HttpContext as a ClaimsPrincipal deklarace identity se z něj načtou. 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í o předmětu vystavitelem. 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 obě 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 poskytuje deklarace identity vydáváním tokenů zabezpečení, obvykle prostřednictvím služby tokenů zabezpečení (STS). V případě, že kolekce deklarací identity obdržených od vystavitele může být rozšířena atributy subjektu, které jsou uložené přímo v prostředku. Deklarace identity se dá vyhodnotit tak, aby během procesu autorizace určila přístupová práva k datům a dalším zabezpečeným prostředkům a dá se také použít k provádění nebo vyjádření rozhodnutí o ověřování o předmětu.

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

Následující popis důležitých Claim vlastností třídy:

  • Vlastnost Type je řetězec (obvykle identifikátor URI), který obsahuje sémantické informace o deklaraci identity. Říká vám, co hodnota deklarace znamená. Deklarace identity s typem GivenName deklarace identity ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname") například představuje křestní jméno uživatele. Hodnota Type vlastnosti může být jedním z dobře známých typů deklarací identity definovaných ve ClaimTypes třídě nebo 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 rámci obchodního kontextu vystavitele.

  • Vlastnost Value obsahuje hodnotu deklarace identity. Aby bylo možné omezit závislosti a zjednodušit správu, je hodnota deklarace identity ve WIF 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 má být hodnota serializována do a deserializována z řetězce.

  • Vlastnost ValueType obsahuje řetězec, který identifikuje informace o typu pro hodnotu. Tato vlastnost by se měla použít 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čujeme použít standardní typy schématu XML ve ValueType vlastnosti k označení, jak Value má být vlastnost serializována do 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ém se deklarace identity uplatňuje. Obsahuje ClaimsIdentity mimo své vlastnosti kolekci deklarací identity, které popisují vlastnosti a atributy předmětu, jak je potvrzeno jedním nebo více vystavitelem.

  • Vlastnost Issuer obsahuje název entity, která vydala deklaraci identity. Vystavitel deklarace identity je ve formátu WIF reprezentován řetězcem, který obsahuje název převzatý ze seznamu známých vystavitelů, které udržuje registr názvů vystavitelů. Registr názvů vystavitele je instance třídy, která je odvozena od IssuerNameRegistry třídy. Registr názvů vystavitelů přidruží k kryptografickému materiálu měmónský název potřebný k ověření podpisů tokenů vytvořených odpovídajícím vystavitelem. Například ConfigurationBasedIssuerNameRegistry třída, která je k dispozici mimo pole s .NET 4.5, přidruží název měmonic pro každého vystavitele k odpovídajícímu certifikátu X.509. Seznam známých vystavitelů je obvykle sestaven v době spuštění registrem názvů vystavitelů. Seznam používaný konfiguračním souborem ConfigurationBasedIssuerNameRegistry aplikace je určen.

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

Konstruktory

Name Description
Claim(BinaryReader, ClaimsIdentity)

Inicializuje novou instanci Claim třídy se zadaným čtenářem a předmětem.

Claim(BinaryReader)

Inicializuje instanci Claim se zadaným BinaryReader.

Claim(Claim, ClaimsIdentity)

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

Claim(Claim)

Inicializuje novou instanci Claim třídy.

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 předmětem.

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)

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

Claim(String, String, String)

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

Claim(String, String)

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

Vlastnosti

Name Description
CustomSerializationData

Obsahuje všechna další data poskytovaná 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 deklarace identity.

Value

Získá hodnotu deklarace identity.

ValueType

Získá typ hodnoty deklarace identity.

Metody

Name Description
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 je nastaven na zadanou hodnotu ClaimsIdentity.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

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

Slouží jako výchozí funkce hash.

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

Získá Type aktuální instance.

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

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

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

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

WriteTo(BinaryWriter, Byte[])

Píše to Claim spisovateli.

WriteTo(BinaryWriter)

Píše to Claim spisovateli.

Platí pro

Viz také