ClaimSet Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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) | |
| 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. |