PermissionSet.PermitOnly Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вызывает любой Demand() , который проходит через вызывающий код для любого PermissionSet , который не является подмножеством текущего 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 ()
Реализации
Комментарии
PermitOnly аналогично , в этом обоих Denyслучаях стек будет завершать сбой, если они в противном случае будут успешными. Разница заключается в том, что Deny указывает разрешения, которые приведут к сбою пошагового стека, но PermitOnly указывает только разрешения, которые не вызывают стека сбой. Вызовите этот метод, чтобы убедиться, что код можно использовать для доступа только к указанным ресурсам.
PermitOnly игнорируется для разрешения, не предоставленного, так как запрос на это разрешение не может завершиться успешно. Тем не менее, если код ниже в стеке вызовов этого разрешения, Demand возникает, когда пошаговые инструкции SecurityException по стеку достигают кода, который пытался вызватьPermitOnly. Это связано с тем, что код, который вызывается PermitOnly , не был предоставлен разрешение, несмотря на то, что он вызвал PermitOnly это разрешение. Стек вызовов обычно представлен как растущий, так что методы выше в методах вызова стека вызовов ниже в стеке вызовов.