AuthorizationContext Clase
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
El resultado de evaluar todas las directivas de autorización disponibles de los tokens en el mensaje enviado y llamando al método 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
- Herencia
-
AuthorizationContext
- Implementaciones
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
Evaluar todas las directivas de autorización en un administrador de autorización da lugar a un conjunto de objetos ClaimSet. Estos objetos constituyen un contexto de autorización.
Un contexto de autorización contiene un conjunto de objetos fijos de demanda, una hora de expiración que especifica la duración en la que el contexto de autorización es válido y un identificador único.
Se puede tener acceso a AuthorizationContext para la operación actual a través de la propiedad AuthorizationContext.
Authorization |
Inicializa una nueva instancia de la clase AuthorizationContext. |
Claim |
Obtiene el conjunto de demandas asociado a una directiva de autorización. |
Expiration |
Obtiene la fecha y hora en las que AuthorizationContext ya no es válido. |
Id |
Obtiene un identificador único para este objeto AuthorizationContext. |
Properties |
Obtiene una colección de propiedades de no demanda asociada a este objeto AuthorizationContext. |
Create |
Evalúe todas las directivas de autorización especificadas y cree un AuthorizationContext. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
Get |
Sirve como la función hash predeterminada. (Heredado de Object) |
Get |
Obtiene el Type de la instancia actual. (Heredado de Object) |
Memberwise |
Crea una copia superficial del Object actual. (Heredado de Object) |
To |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Producto | Versiones |
---|---|
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: