AuthorizationContext Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Das Auswertungsergebnis aller Autorisierungsrichtlinien, die von den Tokens in der gesendeten Nachricht und durch Aufrufen der GetAuthorizationPolicies(OperationContext)-Methode verfügbar sind.
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
- Vererbung
-
AuthorizationContext
- Implementiert
Beispiele
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
Hinweise
Die Auswertung aller Autorisierungsrichtlinien in einem Autorisierungs-Manager führt zu einem Satz von ClaimSet-Objekten. Diese Objekte bilden einen Autorisierungskontext.
Ein Autorisierungskontext enthält eine Gruppe von Anspruchsatzobjekten, eine Ablaufzeit, die den Gültigkeitszeitraum des Evaluierungskontexts angibt, und einen eindeutigen Bezeichner.
Auf den AuthorizationContext für die aktuelle Operation kann über die AuthorizationContext-Eigenschaft zugegriffen werden.
Konstruktoren
AuthorizationContext() |
Initialisiert eine neue Instanz der AuthorizationContext-Klasse. |
Eigenschaften
ClaimSets |
Ruft den Satz von den einer Autorisierungsrichtlinie zugeordneten Ansprüchen ab. |
ExpirationTime |
Ruft das Datum und die Zeit ab, ab wann dieses AuthorizationContext-Objekt nicht mehr gültig ist. |
Id |
Ruft einen eindeutigen Bezeichner für dieses AuthorizationContext-Objekt ab. |
Properties |
Ruft eine Auflistung der diesem AuthorizationContext-Objekt zugeordneten Nicht-Ansprucheigenschaften ab. |
Methoden
CreateDefaultAuthorizationContext(IList<IAuthorizationPolicy>) |
Werten Sie alle angegebenen Autorisierungsrichtlinien aus, und erstellen Sie einen AuthorizationContext. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |