IStackWalk.PermitOnly Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вызывает сбой всех Demand() для всех объектов, кроме текущего, проходящих через вызывающий код, даже если коду выше в стеке вызовов было предоставлено разрешение на доступ к другим ресурсам.
public:
void PermitOnly();
public void PermitOnly ();
abstract member PermitOnly : unit -> unit
Public Sub PermitOnly ()
Комментарии
PermitOnly аналогичен параметру Deny, в том, что и то, и другое приводит к сбою обходов стека, когда они в противном случае были бы успешными. Разница заключается в том, что Deny указывает разрешения, которые приведут к сбою стека, но PermitOnly только разрешения, которые не приводят к сбою стека. Вызовите этот метод, чтобы убедиться, что код может использоваться для доступа только к указанным ресурсам.
PermitOnly игнорируется для разрешения, которое не предоставлено, так как запрос на это разрешение не будет выполнен. Однако если код ниже в стеке вызовов позже вызывает Demand это разрешение, возникает исключение , SecurityException когда пошаговое руководство по стеку достигает кода, который пытался вызвать PermitOnly. Это связано с тем, что коду, который вызвал PermitOnly , не было предоставлено разрешение, даже если он вызывал PermitOnly это разрешение. Стек вызовов обычно представлен как растущий вниз, поэтому методы выше в стеке вызовов вызывают методы ниже в стеке вызовов.