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 это разрешение. Стек вызовов обычно представлен как растущий вниз, поэтому методы выше в стеке вызовов вызывают методы ниже в стеке вызовов.