AuthorizationContext Classe

Définition

Résultat de l'évaluation de toutes les stratégies d'autorisation disponibles à partir des jetons dans le message envoyé et en appelant la méthode GetAuthorizationPolicies(OperationContext).

public ref class AuthorizationContext abstract : System::IdentityModel::Policy::IAuthorizationComponent
public abstract class AuthorizationContext : System.IdentityModel.Policy.IAuthorizationComponent
type AuthorizationContext = class
    interface IAuthorizationComponent
Public MustInherit Class AuthorizationContext
Implements IAuthorizationComponent
Héritage
AuthorizationContext
Implémente

Exemples

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;
}
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 we get here, return false, denying access.
    Return False

End Function

Remarques

L'évaluation de toutes les stratégies d'autorisation dans un gestionnaire d'autorisations produit un ensemble d'objets ClaimSet. Ces objets composent un contexte d'autorisation.

Un contexte d'autorisation contient un ensemble d'objets ClaimSet, une heure d'expiration qui spécifie l'intervalle de temps pendant lequel le contexte d'autorisation est valide et un identificateur unique.

Il est possible d'accéder au AuthorizationContext pour l'opération actuelle via la propriété AuthorizationContext.

Constructeurs

AuthorizationContext()

Initialise une nouvelle instance de la classe AuthorizationContext.

Propriétés

ClaimSets

Obtient l'ensemble de revendications associé à une stratégie d'autorisation.

ExpirationTime

Obtient les date et heure auxquelles cet objet AuthorizationContext n'est plus valide.

Id

Obtient un identificateur unique pour cet objet AuthorizationContext.

Properties

Obtient une collection de propriétés de non revendication associée à cet objet AuthorizationContext.

Méthodes

CreateDefaultAuthorizationContext(IList<IAuthorizationPolicy>)

Évaluez toutes les stratégies d'autorisation spécifiées et créez un AuthorizationContext.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à