IPermission.Demand Метод

Определение

Создает исключение SecurityException во время выполнения, если требования безопасности не выполнены.Throws a SecurityException at run time if the security requirement is not met.

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

Комментарии

Этот метод обычно используется безопасными библиотеками, чтобы убедиться, что вызывающие объекты имеют разрешение на доступ к ресурсу.This method is typically used by secure libraries to ensure that callers have permission to access a resource. Например, класс файла в безопасной библиотеке классов вызывает Demand необходимую FileIOPermission перед выполнением операции с файлом, запрошенной вызывающим объектом.For example, a file class in a secure class library calls Demand for the necessary FileIOPermission before performing a file operation requested by the caller.

Хотя большинство классов, реализующих этот метод интерфейса, удовлетворяют критериям безопасности, выполняя полный анализ стека, проверка стека не обязательно выполняется.Although the majority of the classes that implement this interface method satisfy the security criteria by performing a full stack walk, a stack walk is not necessarily performed. Примером реализации, которая не выполняет проверку стека, является PrincipalPermission.Demand .An example of an implementation that does not perform a stack walk is PrincipalPermission.Demand.

При выполнении анализа стека разрешения кода, вызывающего этот метод, не проверяются. проверка начинается с непосредственного вызывающего объекта этого кода и продолжается вверх по стеку.When a stack walk is performed, the permissions of the code that calls this method are not examined; the check begins from the immediate caller of that code and proceeds up the stack. Стек вызовов обычно представляется как увеличивающийся, поэтому методы, набольшиеся в методах вызова стека вызовов, располагаются ниже в стеке вызовов.The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack. Demand может выполняться, только если не SecurityException возникло исключение.Demand succeeds only if no SecurityException is raised.

Применяется к