Claim Klasa

Definicja

Reprezentuje oświadczenie.

public ref class Claim
public class Claim
[System.Serializable]
public class Claim
type Claim = class
[<System.Serializable>]
type Claim = class
Public Class Claim
Dziedziczenie
Claim
Atrybuty

Przykłady

Poniższy przykład wyodrębnia oświadczenia skojarzone z uwierzytelnionym użytkownikiem wykonującym żądanie HTTP i zapisuje je w odpowiedzi HTTP. Bieżący użytkownik jest odczytywany z HttpContext elementu jako a ClaimsPrincipal , a oświadczenia są odczytywane z niego. Oświadczenia są następnie zapisywane w HttpResponse obiekcie.

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>");  
   }  

}  

Uwagi

Oświadczenie to oświadczenie dotyczące podmiotu przez wystawcę. Oświadczenia reprezentują atrybuty podmiotu, które są przydatne w kontekście operacji uwierzytelniania i autoryzacji. Podmioty i wystawcy są zarówno jednostkami, które są częścią scenariusza tożsamości. Niektóre typowe przykłady tematu to: użytkownik, aplikacja lub usługa, urządzenie lub komputer. Niektóre typowe przykłady wystawcy to: system operacyjny, aplikacja, usługa, dostawca roli, dostawca tożsamości lub dostawca federacyjny. Wystawca dostarcza oświadczenia przez wystawianie tokenów zabezpieczających, zazwyczaj za pośrednictwem usługi tokenu zabezpieczającego (STS). (W programie WIF można utworzyć usługę STS, wyprowadzając z SecurityTokenService klasy ). Czasami zbieranie oświadczeń otrzymanych od wystawcy można rozszerzyć za pomocą atrybutów podmiotu przechowywanych bezpośrednio w zasobie. Oświadczenie można ocenić w celu określenia praw dostępu do danych i innych zabezpieczonych zasobów podczas procesu autoryzacji, a także może służyć do podejmowania lub wyrażania decyzji dotyczących uwierzytelniania na temat podmiotu.

Począwszy od platformy .NET 4.5, klasy windows Identity Foundation (WIF), które implementują tożsamość opartą na oświadczeniach, zostały w pełni zintegrowane z .NET Framework. Koncepcja oświadczeń jest implementowana przez klasę Claim .

Poniżej opisano ważne właściwości Claim klasy:

  • Właściwość Type jest ciągiem (zazwyczaj identyfikatorem URI), który zawiera semantyczne informacje o oświadczeniu; informuje o tym, jaka wartość oświadczenia oznacza. Na przykład oświadczenie o typie GivenName oświadczenia ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname") reprezentuje imię użytkownika. Wartość Type właściwości może być jednym z dobrze znanych typów oświadczeń zdefiniowanych w ClaimTypes klasie lub może być dowolnym identyfikatorem URI zdefiniowanym przez wystawcę. Na przykład typ oświadczenia "urn:spendinglimit" może reprezentować atrybut użytkownika, który ma sens w kontekście biznesowym wystawcy.

  • Właściwość Value zawiera wartość oświadczenia. Aby zmniejszyć zależności i uprościć administrację, w programie WIF wartość oświadczenia jest reprezentowana tylko jako ciąg. W przypadku bardziej złożonych typów wartości zaleca się użycie standardowych typów schematów XML w celu wskazania, w jaki sposób wartość ma być serializowana do i deserializowana z ciągu.

  • Właściwość ValueType zawiera ciąg identyfikujący informacje o typie wartości. Ta właściwość powinna służyć do zrozumienia formatu wartości i udostępnienia informacji na temat deserializacji. Jeśli rozwiązanie wymaga złożonych typów wartości, zaleca się użycie standardowych typów schematów XML we ValueType właściwości , aby wskazać, w jaki sposób Value właściwość ma być serializowana i deserializowana z ciągu.

  • Właściwość Subject jest obiektem reprezentującym ClaimsIdentity podmiot oświadczenia. Podmiotem oświadczenia jest jednostka (zazwyczaj użytkownik, który żąda dostępu do zasobu), o którym oświadczenie jest potwierdzane. Element ClaimsIdentity zawiera między jego właściwościami kolekcję oświadczeń opisujących właściwości i atrybuty podmiotu, które są zaświadczane przez co najmniej jednego wystawcę.

  • Właściwość Issuer zawiera nazwę jednostki, która wystawiła oświadczenie. Wystawca oświadczenia jest reprezentowany w programie WIF przez ciąg zawierający nazwę pobraną z listy dobrze znanych wystawców, które są obsługiwane przez rejestr nazw wystawców. Rejestr nazw wystawców jest wystąpieniem klasy pochodzącej IssuerNameRegistry z klasy . Rejestr nazw wystawców kojarzy nazwę mnemonic z materiałami kryptograficznymi wymaganymi do zweryfikowania podpisów tokenów utworzonych przez odpowiedniego wystawcę. Na przykład ConfigurationBasedIssuerNameRegistry klasa dostępna w pudełku z platformą .NET 4.5 kojarzy nazwę mnemonic dla każdego wystawcy z odpowiednim certyfikatem X.509. Lista dobrze znanych wystawców jest zwykle tworzona podczas uruchamiania przez rejestr nazw wystawców. Lista używana przez element ConfigurationBasedIssuerNameRegistry jest określona w pliku konfiguracji aplikacji.

  • Właściwość OriginalIssuer zawiera nazwę jednostki, która pierwotnie wydała oświadczenie. Ta właściwość została zaprojektowana w celu ułatwienia scenariuszy, w których oświadczenie może przechodzić przez wielu wystawców przed przekazaniem go przez klienta do aplikacji rp; takich jak scenariusze federacji. Właściwość można sprawdzić, OriginalIssuer aby określić jednostkę, która pierwotnie wystawiła oświadczenie. Nazwa jest pobierana z listy dobrze znanych wystawców obsługiwanych przez rejestr nazw wystawców, jak w przypadku Issuer właściwości.

Konstruktory

Claim(BinaryReader)

Inicjuje wystąpienie klasy Claim z określonym BinaryReaderelementem .

Claim(BinaryReader, ClaimsIdentity)

Inicjuje Claim nowe wystąpienie klasy z określonym czytnikiem i tematem.

Claim(Claim)

Inicjuje nowe wystąpienie klasy Claim.

Claim(Claim, ClaimsIdentity)

Inicjuje Claim nowe wystąpienie klasy z określonym oświadczeniem zabezpieczeń i podmiotem.

Claim(String, String)

Inicjuje Claim nowe wystąpienie klasy z określonym typem oświadczenia i wartością.

Claim(String, String, String)

Inicjuje Claim nowe wystąpienie klasy z określonym typem oświadczenia, wartością i typem wartości.

Claim(String, String, String, String)

Inicjuje Claim nowe wystąpienie klasy z określonym typem oświadczenia, wartością, typem wartości i wystawcą.

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

Inicjuje Claim nowe wystąpienie klasy z określonym typem oświadczenia, wartością, typem wartości, wystawcą i oryginalnym wystawcą.

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

Inicjuje Claim nowe wystąpienie klasy z określonym typem oświadczenia, wartością, typem wartości, wystawcą, oryginalnym wystawcą i podmiotem.

Właściwości

CustomSerializationData

Zawiera wszelkie dodatkowe dane udostępniane przez typ pochodny.

Issuer

Pobiera wystawcę oświadczenia.

OriginalIssuer

Pobiera oryginalnego wystawcę roszczenia.

Properties

Pobiera słownik zawierający dodatkowe właściwości skojarzone z tym oświadczeniem.

Subject

Pobiera przedmiot roszczenia.

Type

Pobiera typ oświadczenia oświadczenia.

Value

Pobiera wartość oświadczenia.

ValueType

Pobiera typ wartości oświadczenia.

Metody

Clone()

Zwraca nowy Claim obiekt skopiowany z tego obiektu. Nowe roszczenie nie ma podmiotu.

Clone(ClaimsIdentity)

Zwraca nowy Claim obiekt skopiowany z tego obiektu. Temat nowego oświadczenia jest ustawiony na określone OświadczeniaIdentity.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca reprezentację ciągu tego Claim obiektu.

WriteTo(BinaryWriter)

Pisze to Claim do pisarza.

WriteTo(BinaryWriter, Byte[])

Pisze to Claim do pisarza.

Dotyczy

Zobacz też