Sdílet prostřednictvím


Claim Třída

Definice

Představuje deklaraci identity, která je přidružená k entitě.

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
Dědičnost
Claim
Atributy

Příklady

// 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

Poznámky

Model identit je systém autorizace na základě deklarací identity. Deklarace identity popisují možnosti spojené s určitou entitou v systému, často uživatelem tohoto systému. Sadu deklarací identity spojených s danou entitou si můžete představit jako klíč. Konkrétní deklarace identity definují tvar tohoto klíče; podobně jako fyzický klíč se používá k otevření zámku ve dveřích. Tímto způsobem se deklarace identity používají k získání přístupu k prostředkům. Přístup k danému chráněnému prostředku se určuje porovnáním deklarací identity požadovaných pro přístup k danému prostředku s deklaracemi identit přidruženými k entitě, která se o přístup pokouší.

Deklarace identity je vyjádřením práva s ohledem na určitou hodnotu. Právo může být čtení, zápis nebo držení. Hodnotou může být databáze, soubor, poštovní schránka nebo vlastnost. Deklarace identity mají také typ deklarace identity. Kombinace typu deklarace identity a práva poskytuje mechanismus pro specifikované schopnosti s ohledem na hodnotu. Například deklarace identity typu file s právem read nad hodnotou biography.doc označuje, že entita s takovou deklarací identity má přístup ke čtení souboru biography.doc. Deklarace identity typu s právem PossessProperty nad hodnotou Martin označuje, že entita s deklarací identity má Name vlastnost s hodnotou Martin.

I když jsou různé typy deklarací identity a práva definovány jako součást modelu identit, systém je rozšiřitelný. Různé systémy, které jsou založené na infrastruktuře modelu identit, můžou podle potřeby definovat typy deklarací identity a práva.

Konstruktory

Claim(String, Object, String)

Inicializuje novou instanci Claim třídy se zadaným typem, prostředkem a vpravo.

Vlastnosti

ClaimType

Získá typ deklarace identity.

DefaultComparer

Získá objekt, který lze porovnat dva Claim objekty pro rovnost.

Resource

Získá prostředek, se kterým je tento Claim objekt přidružen.

Right

Řetězcová reprezentace identifikátoru URI (Uniform Resource Identifier), která určuje právo přidružené k tomuto Claim objektu. Předdefinovaná práva jsou k dispozici jako statické vlastnosti Rights třídy .

System

Předdefinovaná deklarace identity, která představuje entitu systému.

Metody

CreateDenyOnlyWindowsSidClaim(SecurityIdentifier)

Vytvoří Claim objekt, který představuje identifikátor zabezpečení (SID) určený pouze pro odepření.

CreateDnsClaim(String)

Vytvoří Claim objekt, který představuje zadaný název DNS (Domain Name System).

CreateHashClaim(Byte[])

Vytvoří Claim objekt, který představuje zadanou hodnotu hash.

CreateMailAddressClaim(MailAddress)

Vytvoří Claim objekt, který představuje zadanou e-mailovou adresu.

CreateNameClaim(String)

Vytvoří Claim objekt, který představuje zadaný název.

CreateRsaClaim(RSA)

Vytvoří Claim objekt, který představuje zadaný klíč RSA.

CreateSpnClaim(String)

Vytvoří Claim objekt, který představuje zadaný hlavní název služby (SPN).

CreateThumbprintClaim(Byte[])

Vytvoří Claim objekt, který představuje zadaný kryptografický otisk.

CreateUpnClaim(String)

Vytvoří Claim objekt, který představuje zadaný univerzální hlavní název (UPN).

CreateUriClaim(Uri)

Vytvoří Claim objekt, který představuje zadanou adresu URL (Uniform Resource Locator).

CreateWindowsSidClaim(SecurityIdentifier)

Vytvoří Claim objekt, který představuje zadaný identifikátor zabezpečení (SID).

CreateX500DistinguishedNameClaim(X500DistinguishedName)

Vytvoří Claim objekt, který představuje zadaný rozlišující název X.500.

Equals(Object)

Určuje, zda zadaný objekt představuje stejnou deklaraci identity jako aktuální Claim objekt.

GetHashCode()

Vrátí kód hash pro aktuální deklaraci identity.

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.

Platí pro