Sdílet prostřednictvím


PermissionSet.PermitOnly Metoda

Definice

Způsobí selhání všech Demand() , které procházejí volajícím kódem, PermissionSet který není podmnožinou aktuálního kódu PermissionSet .

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

Implementuje

Poznámky

PermitOnly je podobná Deny, v tom, že obě způsobují selhání zásobníku, když by jinak úspěšné. Rozdíl spočívá v tom, že Deny určuje oprávnění, která způsobí selhání zásobníku, ale PermitOnly určuje jediná oprávnění, která nezpůsobí selhání chůze zásobníku. Volejte tuto metodu, abyste zajistili, že váš kód lze použít pro přístup pouze k zadaným prostředkům.

PermitOnly je ignorován pro oprávnění, které není uděleno, protože požadavek na toto oprávnění nemůže být úspěšný. Pokud ale kód nižší v zásobníku volání později volá Demand toto oprávnění, SecurityException vyvolá se při procházení zásobníku do kódu, který se pokusil volat PermitOnly. Důvodem je to, že kód, který volal PermitOnly , nebyl udělen oprávnění, i když volal PermitOnly pro toto oprávnění. Zásobník volání je obvykle reprezentován jako rostoucí, takže metody vyšší ve volání zásobníku volání nižší v zásobníku volání.

Platí pro