AuthorizationContext Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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) |