ClaimSet Klas

Definitie

Vertegenwoordigt de verzameling claims die zijn gekoppeld aan een entiteit.

public ref class ClaimSet abstract : System::Collections::Generic::IEnumerable<System::IdentityModel::Claims::Claim ^>
public abstract class ClaimSet : System.Collections.Generic.IEnumerable<System.IdentityModel.Claims.Claim>
[System.Runtime.Serialization.DataContract(Namespace="http://schemas.xmlsoap.org/ws/2005/05/identity")]
public abstract class ClaimSet : System.Collections.Generic.IEnumerable<System.IdentityModel.Claims.Claim>
type ClaimSet = class
    interface seq<Claim>
    interface IEnumerable
[<System.Runtime.Serialization.DataContract(Namespace="http://schemas.xmlsoap.org/ws/2005/05/identity")>]
type ClaimSet = class
    interface seq<Claim>
    interface IEnumerable
Public MustInherit Class ClaimSet
Implements IEnumerable(Of Claim)
Overname
ClaimSet
Afgeleid
Kenmerken
Implementeringen

Voorbeelden

public class MyServiceAuthorizationManager : ServiceAuthorizationManager
{

    protected override bool CheckAccessCore(OperationContext operationContext)
    {
        // Extract the action URI from the OperationContext. Match this against the claims
        // in the AuthorizationContext.

        string action = operationContext.RequestContext.RequestMessage.Headers.Action;
        Console.WriteLine("action: {0}", action);

        // Iterate through the various claim sets in the AuthorizationContext.
        foreach (ClaimSet cs in operationContext.ServiceSecurityContext.AuthorizationContext.ClaimSets)
        {
            // Examine only those claim sets issued by System.
            if (cs.Issuer == ClaimSet.System)
            {
                // Iterate through claims of type "http://example.org/claims/allowedoperation".
                foreach (Claim c in cs.FindClaims("http://example.org/claims/allowedoperation",
                    Rights.PossessProperty))
                {
                    // Write the claim resource to the console.
                    Console.WriteLine("resource: {0}", c.Resource.ToString());

                    // If the claim resource matches the action URI then return true to allow access.
                    if (action == c.Resource.ToString())
                        return true;
                }
            }
        }

        // If this point is reached, return false to deny access.
        return false;
    }
}
Public Class MyServiceAuthorizationManager
    Inherits ServiceAuthorizationManager

    Protected Overrides Function CheckAccessCore(ByVal operationContext As OperationContext) As Boolean

        ' Extract the action URI from the OperationContext. Match this against the claims
        ' in the AuthorizationContext.
        Dim action As String = operationContext.RequestContext.RequestMessage.Headers.Action
        Console.WriteLine("action: {0}", action)

        ' Iterate through the various claim sets in the AuthorizationContext.
        Dim cs As ClaimSet

        For Each cs In operationContext.ServiceSecurityContext.AuthorizationContext.ClaimSets
            ' Examine only those claim sets issued by System.
            If cs.Issuer Is ClaimSet.System Then
                ' Iterate through claims of type "http://example.org/claims/allowedoperation".
                Dim c As Claim
                For Each c In cs.FindClaims("http://example.org/claims/allowedoperation", Rights.PossessProperty)
                    ' Write the claim resource to the console.
                    Console.WriteLine("resource: {0}", c.Resource.ToString())

                    ' If the claim resource matches the action URI then return true to allow access
                    If action = c.Resource.ToString() Then
                        Return True
                    End If
                Next c
            End If
        Next cs
        ' 
        ' If this point is reached, return false to deny access.
        Return False

    End Function

Opmerkingen

Nadat de ClaimSet klasse is gemaakt, kan deze niet meer worden gewijzigd.

Het onderzoeken van de inhoud van een ClaimSet voor bepaalde typen claims is een veelvoorkomende taak bij het gebruik van autorisatie op basis van claims. Als u een ClaimSet voor de aanwezigheid van bepaalde claims wilt onderzoeken, gebruikt u de FindClaims methode. De methode biedt betere prestaties dan rechtstreeks via de ClaimSet.

Constructors

Name Description
ClaimSet()

Initialiseert een nieuw exemplaar van de ClaimSet klasse.

Eigenschappen

Name Description
Count

Wanneer deze wordt overschreven in een afgeleide klasse, wordt het aantal claims in deze claimset opgevraagd.

Issuer

Wanneer deze wordt overschreven in een afgeleide klasse, haalt u de entiteit op die deze ClaimSetheeft uitgegeven.

Item[Int32]

Wanneer deze wordt overschreven in een afgeleide klasse, haalt u de Claim voor de opgegeven index op.

System

Hiermee haalt u een ClaimSet object op dat een vertrouwde uitgever van een toepassing vertegenwoordigt.

Windows

Hiermee haalt u een set claims op die Windows beveiligings-id's bevat.

Methoden

Name Description
ContainsClaim(Claim, IEqualityComparer<Claim>)

Bepaalt of het de ClaimSet opgegeven Claimbevat, met behulp van het opgegeven IEqualityComparer<T> object.

ContainsClaim(Claim)

Bepaalt of de ClaimSet opgegeven Claimbevat.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
FindClaims(String, String)

Wanneer deze wordt overschreven in een afgeleide klasse, zoekt u naar een Claim object dat overeenkomt met het opgegeven claimtype en de rechten in de ClaimSet.

GetEnumerator()

Wanneer deze wordt overschreven in een afgeleide klasse, wordt een IEnumerator<T> klasse opgehaald die kan worden gebruikt om het Claim object in het ClaimSetobject op te sommen.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

Name Description
IEnumerable.GetEnumerator()

Hiermee haalt u een IEnumerator<T> op die kan worden gebruikt om het Claim object in het ClaimSetobject op te sommen.

Extensiemethoden

Name Description
ToAsyncEnumerable<TSource>(IEnumerable<TSource>)

Converteert een IEnumerable<T> naar een IAsyncEnumerable<T>.

ToFrozenDictionary<TSource,TKey,TElement>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Hiermee maakt u een FrozenDictionary<TKey,TValue> van een op basis van de IEnumerable<T> opgegeven sleutelkiezer- en elementselectorfuncties.

ToFrozenDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Hiermee maakt u een FrozenDictionary<TKey,TValue> van een op basis van een IEnumerable<T> opgegeven sleutelkiezerfunctie.

ToFrozenSet<T>(IEnumerable<T>, IEqualityComparer<T>)

Hiermee maakt u een FrozenSet<T> met de opgegeven waarden.

ToImmutableArray<TSource>(IEnumerable<TSource>)

Hiermee maakt u een onveranderbare matrix op basis van de opgegeven verzameling.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>, IEqualityComparer<TValue>)

Inventariseert en transformeert een reeks en produceert een onveranderbare woordenlijst van de inhoud met behulp van de opgegeven sleutel- en waarde-vergelijkingen.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IEqualityComparer<TKey>)

Inventariseert en transformeert een reeks en produceert een onveranderbare woordenlijst van de inhoud met behulp van de opgegeven sleutel-vergelijkingsfunctie.

ToImmutableDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

Inventariseert en transformeert een reeks en produceert een onveranderbare woordenlijst van de inhoud.

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Maakt een onveranderbare woordenlijst op basis van een bepaalde transformatie van een reeks.

ToImmutableDictionary<TSource,TKey>(IEnumerable<TSource>, Func<TSource,TKey>)

Hiermee wordt een onveranderbare woordenlijst samengesteld op basis van een bestaande verzameling elementen, waarbij een transformatiefunctie wordt toegepast op de bronsleutels.

ToImmutableHashSet<TSource>(IEnumerable<TSource>, IEqualityComparer<TSource>)

Inventariseert een reeks, produceert een onveranderbare hashset van de inhoud en maakt gebruik van de opgegeven gelijkheidsgelijker voor het settype.

ToImmutableHashSet<TSource>(IEnumerable<TSource>)

Inventariseert een reeks en produceert een onveranderbare hashset van de inhoud.

ToImmutableList<TSource>(IEnumerable<TSource>)

Inventariseert een reeks en produceert een onveranderbare lijst met inhoud.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>, IEqualityComparer<TValue>)

Inventariseert en transformeert een reeks en produceert een onveranderbare gesorteerde woordenlijst van de inhoud met behulp van de opgegeven sleutel- en waarde-vergelijkingen.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>, IComparer<TKey>)

Inventariseert en transformeert een reeks en produceert een onveranderbare gesorteerde woordenlijst van de inhoud met behulp van de opgegeven sleutel vergelijken.

ToImmutableSortedDictionary<TSource,TKey,TValue>(IEnumerable<TSource>, Func<TSource,TKey>, Func<TSource,TValue>)

Inventariseert en transformeert een reeks en produceert een onveranderbare gesorteerde woordenlijst van de inhoud.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Inventariseert een reeks, produceert een onveranderbare gesorteerde set inhoud en maakt gebruik van de opgegeven vergelijkingsfunctie.

ToImmutableSortedSet<TSource>(IEnumerable<TSource>)

Inventariseert een reeks en produceert een onveranderbare gesorteerde set inhoud.

Van toepassing op