AuthorizationContext Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Risultato della valutazione di tutti i criteri di autorizzazione disponibili dai token inclusi nel messaggio inviato e mediante la chiamata al metodo 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
- Ereditarietà
-
AuthorizationContext
- Implementazioni
Esempio
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
Commenti
La valutazione di tutti i criteri di autorizzazione in Gestione autorizzazioni determina un set di oggetti ClaimSet. Questi oggetti costituiscono un contesto di autorizzazione.
Un contesto di autorizzazione contiene un set di oggetti di attestazione: una data di scadenza, che specifica il periodo di validità del contesto di autorizzazione, e un identificatore univoco.
L'accesso alla classe AuthorizationContext per l'operazione corrente può essere eseguito utilizzando la proprietà AuthorizationContext.
Costruttori
AuthorizationContext() |
Inizializza una nuova istanza della classe AuthorizationContext. |
Proprietà
ClaimSets |
Ottiene il set di attestazioni associato a dei criteri di autorizzazione. |
ExpirationTime |
Ottiene la data e l'ora di scadenza della validità dell'oggetto AuthorizationContext corrente. |
Id |
Ottiene un identificatore univoco per l'oggetto AuthorizationContext corrente. |
Properties |
Ottiene una raccolta di proprietà diverse da attestazioni associato all'oggetto AuthorizationContext corrente. |
Metodi
CreateDefaultAuthorizationContext(IList<IAuthorizationPolicy>) |
Valutare tutti i criteri di autorizzazione specificati e creare una classe AuthorizationContext. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |