Compartilhar via


IStackWalk.PermitOnly Método

Definição

Faz com que cada Demand() para todos os objetos, com exceção do atual, que passam pelo código de chamada falhe, mesmo se a permissão para acessar outros recursos foi concedida a código superior na pilha de chamadas.

public:
 void PermitOnly();
public void PermitOnly ();
abstract member PermitOnly : unit -> unit
Public Sub PermitOnly ()

Comentários

PermitOnly é semelhante a Deny, pois ambos fazem com que as caminhadas de pilha falhem quando, de outra forma, teriam êxito. A diferença é que Deny especifica permissões que farão com que a caminhada da pilha falhe, mas PermitOnly especifica as únicas permissões que não fazem com que a caminhada da pilha falhe. Chame esse método para garantir que seu código possa ser usado para acessar apenas os recursos especificados.

PermitOnly é ignorado para uma permissão não concedida porque uma demanda por essa permissão não terá êxito. No entanto, se o código mais baixo na pilha de chamadas mais tarde chamar Demand essa permissão, um SecurityException será gerado quando o passo a passo da pilha atingir o código que tentou chamar PermitOnly. Isso ocorre porque o código chamado PermitOnly não recebeu a permissão, embora tenha solicitado PermitOnly essa permissão. Normalmente, a pilha de chamadas é representada como crescente, de modo que métodos mais altos na pilha de chamadas chamem métodos mais baixos na pilha de chamadas.

Aplica-se a