PermissionSet.Demand Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permissions specified by the current instance.
public:
virtual void Demand();
public void Demand ();
public virtual void Demand ();
abstract member Demand : unit -> unit
override this.Demand : unit -> unit
Public Sub Demand ()
Public Overridable Sub Demand ()
Implements
Exceptions
A caller in the call chain does not have the permission demanded.
Examples
The following code example shows the use of the Demand method to demand all the permissions in a permission set. This code example is part of a larger example provided for the PermissionSet class.
// Demand all the permissions in the set.
Console::WriteLine( "Demand all permissions." );
ps1->Demand();
// Demand all the permissions in the set.
Console.WriteLine("Demand all permissions.");
ps1.Demand();
' Demand all the permissions in the set.
Console.WriteLine("Demand all permissions.")
ps1.Demand()
Remarks
Use Demand on a PermissionSet to ensure that all callers have all permissions in the set with one operation.
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 succeeds only if no SecurityException is thrown.
If the PermissionSet contains permissions that do not inherit from CodeAccessPermission, the Demand
methods of those permissions are called as well.