ClaimsPrincipalPermission.Demand Método

Definição

Verifica se a entidade atual tem autorização para os pares de ação de recurso associados à instância atual.

public:
 virtual void Demand();
public void Demand ();
abstract member Demand : unit -> unit
override this.Demand : unit -> unit
Public Sub Demand ()

Implementações

Exceções

A entidade de segurança atual não é atribuível de ClaimsPrincipal.

- ou -

Não há um ClaimsAuthorizationManager configurado.

Falha na verificação de autorização.

Exemplos

O exemplo a seguir mostra como proteger um recurso usando o Demand método . O gerenciador de autorização de declarações configurado é invocado para avaliar a entidade de segurança atual em relação ao recurso e à ação especificados. Se a entidade de segurança atual não estiver autorizada para a ação especificada no recurso especificado, um SecurityException será gerado; caso contrário, a execução continuará.

//
// 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();

Comentários

A entidade de segurança atual deve ser autorizada para todos os pares de ação de recurso associados a essa instância ou a SecurityException exceção é gerada.

Embora o construtor use apenas um único recurso e uma ação, ClaimsPrincipalPermission os objetos podem ser combinados por meio dos Union métodos e Intersect . A permissão criada por meio desses métodos pode conter vários pares de ação de recurso.

O Demand método invoca o ClaimsAuthorizationManager.CheckAccess método do gerenciador de autorização de declarações configurado com um AuthorizationContext composto da entidade de segurança ativa (CurrentPrincipal), do recurso e da ação para cada um dos pares de ação de recurso contidos na permissão. Para que o Demand tenha êxito, a entidade de segurança ativa deve ser autorizada para todos os pares de ação de recurso contidos na permissão.

Aplica-se a