CodeAccessPermission.Deny Method

Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

Namespace: System.Security
Assembly: mscorlib (in mscorlib.dll)

public void Deny ()
public final void Deny ()
public final function Deny ()
Not applicable.

Exception typeCondition


There is already an active Deny for the current frame.

This method prevents callers higher in the call stack from accessing the protected resource through the code that calls this method, even if those callers have been granted permission to access it. The call stack is typically represented as growing down, so that methods higher in the call stack call methods lower in the call stack.

Deny can limit the liability of the programmer or help prevent accidental security issues because it helps prevent the method that calls Deny from being used to access the resource protected by the denied permission. If a method calls Deny on a permission, and if a Demand for that permission is invoked by a caller lower in the call stack, that security check will fail when it reaches the Deny.

The call to Deny is effective until the calling code returns to its caller. Only one Deny can be active on a frame. An attempt to call Deny when an active Deny exists on the frame results in a SecurityException. Call RevertDeny or RevertAll to remove an active Deny. Deny is ignored for a permission not granted because a demand for that permission will not succeed.

Notes to Inheritors: You cannot override this method.

The following code example shows the use of the Deny method to prevent access to the resource specified by the current instance. This code example is part of a larger example provided for the RevertAll method.

// Create a new UIPermission that allows access only to OwnClipboard.
UIPermission clipboardPermission = new UIPermission(UIPermissionClipboard.OwnClipboard);
// Deny access to OwnClipboard.
Console.WriteLine("Denying access to OwnClipboard");
// Demand access to files in the specified path.
// Revert the Deny.
Console.WriteLine("Reverting the Deny.");

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0