Claim Klasa

Definicja

Reprezentuje oświadczenie skojarzone z jednostką.

public ref class Claim
[System.Runtime.Serialization.DataContract(Namespace="http://schemas.xmlsoap.org/ws/2005/05/identity")]
public class Claim
[<System.Runtime.Serialization.DataContract(Namespace="http://schemas.xmlsoap.org/ws/2005/05/identity")>]
type Claim = class
Public Class Claim
Dziedziczenie
Claim
Atrybuty

Przykłady

// Run this method from within a method protected by the PrincipalPermissionAttribute
// to see the security context data, including the primary identity.
public void WriteServiceSecurityContextData(string fileName)
{
    using (StreamWriter sw = new StreamWriter(fileName))
    {
        // Write the primary identity and Windows identity. The primary identity is derived from the
        // the credentials used to authenticate the user. The Windows identity may be a null string.
        sw.WriteLine("PrimaryIdentity: {0}", ServiceSecurityContext.Current.PrimaryIdentity.Name);
        sw.WriteLine("WindowsIdentity: {0}", ServiceSecurityContext.Current.WindowsIdentity.Name);
        sw.WriteLine();
        // Write the claimsets in the authorization context. By default, there is only one claimset
        // provided by the system.
        foreach (ClaimSet claimset in ServiceSecurityContext.Current.AuthorizationContext.ClaimSets)
        {
            foreach (Claim claim in claimset)
            {
                // Write out each claim type, claim value, and the right. There are two
                // possible values for the right: "identity" and "possessproperty".
                sw.WriteLine("Claim Type = {0}", claim.ClaimType);
                sw.WriteLine("\t Resource = {0}", claim.Resource.ToString());
                sw.WriteLine("\t Right = {0}", claim.Right);
            }
        }
    }
}
' Run this method from within a method protected by the PrincipalPermissionAttribute
' to see the security context data, including the primary identity.
Public Sub WriteServiceSecurityContextData(ByVal fileName As String)
    Dim sw As New StreamWriter(fileName)
    Try
        ' Write the primary identity and Windows identity. The primary identity is derived from the
        ' the credentials used to authenticate the user. The Windows identity may be a null string.
        sw.WriteLine("PrimaryIdentity: {0}", ServiceSecurityContext.Current.PrimaryIdentity.Name)
        sw.WriteLine("WindowsIdentity: {0}", ServiceSecurityContext.Current.WindowsIdentity.Name)
        sw.WriteLine()
        ' Write the claimsets in the authorization context. By default, there is only one claimset
        ' provided by the system. 
        Dim claimset As ClaimSet
        For Each claimset In ServiceSecurityContext.Current.AuthorizationContext.ClaimSets
            Dim claim As Claim
            For Each claim In claimset
                ' Write out each claim type, claim value, and the right. There are two
                ' possible values for the right: "identity" and "possessproperty". 
                sw.WriteLine("Claim Type = {0}", claim.ClaimType)
                sw.WriteLine(vbTab + " Resource = {0}", claim.Resource.ToString())
                sw.WriteLine(vbTab + " Right = {0}", claim.Right)
            Next claim
        Next claimset
    Finally
        sw.Dispose()
    End Try

End Sub

Uwagi

Model tożsamości to oparty na oświadczeniach system autoryzacji. Oświadczenia opisują możliwości skojarzone z niektórymi jednostkami w systemie, często użytkownikiem tego systemu. Zestaw oświadczeń skojarzonych z daną jednostką można traktować jako klucz. Określone oświadczenia definiują kształt tego klucza; podobnie jak klucz fizyczny jest używany do otwierania blokady w drzwiach. W ten sposób oświadczenia są używane do uzyskiwania dostępu do zasobów. Dostęp do danego chronionego zasobu jest określany przez porównanie oświadczeń wymaganych do uzyskania dostępu do tego zasobu z oświadczeniami skojarzonymi z jednostką, która próbuje uzyskać dostęp.

Oświadczenie jest wyrażeniem prawa w odniesieniu do określonej wartości. Prawo może być odczytywane, zapisywane lub posiadane. Wartość może być bazą danych, plikiem, skrzynką pocztową lub właściwością. Oświadczenia mają również typ oświadczenia. Kombinacja typu oświadczenia i prawa zapewnia mechanizm możliwości określonych w odniesieniu do wartości. Na przykład oświadczenie typu file z prawem po prawej read stronie wartości biography.doc wskazuje, że jednostka z takim oświadczeniem ma dostęp do odczytu do pliku biography.doc. Oświadczenie nazwy typu z prawem do PossessProperty wartości Martin wskazuje, że jednostka z oświadczeniem Name posiada właściwość o wartości Martin.

Chociaż różne typy oświadczeń i prawa są definiowane jako część modelu tożsamości, system jest rozszerzalny. Różne systemy oparte na infrastrukturze modelu tożsamości mogą definiować typy oświadczeń i prawa zgodnie z potrzebami.

Konstruktory

Claim(String, Object, String)

Inicjuje Claim nowe wystąpienie klasy o określonym typie, zasobie i prawo.

Właściwości

ClaimType

Pobiera typ oświadczenia.

DefaultComparer

Pobiera obiekt, który może porównać dwa Claim obiekty pod kątem równości.

Resource

Pobiera zasób, z którym jest skojarzony ten Claim obiekt.

Right

Ciąg reprezentujący jednolity identyfikator zasobu (URI), który określa prawo skojarzone z tym Claim obiektem. Wstępnie zdefiniowane prawa są dostępne jako właściwości Rights statyczne klasy.

System

Wstępnie zdefiniowane oświadczenie reprezentujące jednostkę systemową.

Metody

CreateDenyOnlyWindowsSidClaim(SecurityIdentifier)

Claim Tworzy obiekt, który reprezentuje określony tylko identyfikator zabezpieczeń (SID, deny-only security identifier).

CreateDnsClaim(String)

Claim Tworzy obiekt reprezentujący określoną nazwę systemu nazw domen (DNS).

CreateHashClaim(Byte[])

Claim Tworzy obiekt reprezentujący określoną wartość skrótu.

CreateMailAddressClaim(MailAddress)

Claim Tworzy obiekt reprezentujący określony adres e-mail.

CreateNameClaim(String)

Claim Tworzy obiekt reprezentujący określoną nazwę.

CreateRsaClaim(RSA)

Claim Tworzy obiekt reprezentujący określony klucz RSA.

CreateSpnClaim(String)

Claim Tworzy obiekt reprezentujący określoną nazwę główną usługi (SPN).

CreateThumbprintClaim(Byte[])

Claim Tworzy obiekt reprezentujący określony odcisk palca.

CreateUpnClaim(String)

Claim Tworzy obiekt reprezentujący określoną nazwę główną uniwersalnej (UPN).

CreateUriClaim(Uri)

Claim Tworzy obiekt reprezentujący określony ujednolicony lokalizator zasobów (URL).

CreateWindowsSidClaim(SecurityIdentifier)

Claim Tworzy obiekt reprezentujący określony identyfikator zabezpieczeń (SID).

CreateX500DistinguishedNameClaim(X500DistinguishedName)

Claim Tworzy obiekt reprezentujący określoną nazwę wyróżniającą X.500.

Equals(Object)

Określa, czy określony obiekt reprezentuje to samo oświadczenie co bieżący Claim obiekt.

GetHashCode()

Zwraca kod skrótu dla bieżącego oświadczenia.

GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

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

(Odziedziczone po Object)
ToString()

Zwraca reprezentację ciągu tego Claim obiektu.

Dotyczy