ClaimsPrincipalPermission.Demand Método
Definición
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í.
Comprueba si la entidad de seguridad actual está autorizada para los pares de recurso-acción asociados a la instancia actual.
public:
virtual void Demand();
public void Demand ();
abstract member Demand : unit -> unit
override this.Demand : unit -> unit
Public Sub Demand ()
Implementaciones
Excepciones
La entidad de seguridad actual no se puede asignar desde ClaimsPrincipal.
o bien
No hay ClaimsAuthorizationManager configurados.
La comprobación de la autorización no se pudo realizar.
Ejemplos
En el ejemplo siguiente se muestra cómo proteger un recurso mediante el Demand método . El administrador de autorización de notificaciones configurado se invoca para evaluar la entidad de seguridad actual con el recurso y la acción especificados. Si la entidad de seguridad actual no está autorizada para la acción especificada en el recurso especificado, se produce una SecurityException excepción ; de lo contrario, la ejecución continúa.
//
// Method 2. Programmatic check using the permission class
// Follows model found at http://msdn.microsoft.com/library/system.security.permissions.principalpermission.aspx
//
ClaimsPrincipalPermission cpp = new ClaimsPrincipalPermission("resource", "action");
cpp.Demand();
Comentarios
La entidad de seguridad actual debe estar autorizada para todos los pares de acción de recursos asociados a esta instancia o se produce la SecurityException excepción.
Aunque el constructor solo toma un único recurso y acción, ClaimsPrincipalPermission los objetos se pueden combinar a través de los Union métodos y Intersect . El permiso creado a través de estos métodos puede contener varios pares de acción de recursos.
El Demand método invoca el ClaimsAuthorizationManager.CheckAccess método del administrador de autorización de notificaciones configurado con un AuthorizationContext compuesto por la entidad de seguridad activa (CurrentPrincipal), el recurso y la acción de cada uno de los pares de acciones de recursos contenidos en el permiso. Demand Para que se realice correctamente, la entidad de seguridad activa debe estar autorizada para todos los pares de acción de recursos contenidos en el permiso.