Skip to Content
Programming .NET Security
book

Programming .NET Security

by Adam Freeman, Allen Jones
June 2003
Intermediate to advanced
714 pages
22h 8m
English
O'Reilly Media, Inc.
Content preview from Programming .NET Security

Name

IPermission

Synopsis

public interface IPermission : ISecurityEncodable {
// Public Instance Methods
   public IPermission Copy(  );
   public void Demand(  );
   public IPermission Intersect(IPermission target);
   public bool IsSubsetOf(IPermission target);
   public IPermission Union(IPermission target);
}

This IPermission interface defines the minimum set of methods that all permission classes must implement if they are to integrate with the code-access security framework of the .NET runtime.

IPermission defines the Demand( ) method, which is the most fundamental mechanism used to enforce code-access security. Demand( ) invokes a security demand for the implementing permission object. This ensures that calling code has the permission; otherwise, a SecurityException is thrown. All of the standard code-access and identity permissions implement the IStackWalk interface, which also defines a Demand( ) method. The IStackWalk.Demand( ) method initiates a stack-walk-based security demand, whereas IPermission.Demand( ) is intended for use by permission classes that do not use stack walks—for example, the System.Security.Permissions.PrincipalPermission class.

The exact behavior of the Copy( ), Intersect( ), IsSubsetOf( ), and Union( ) methods vary based on the nature of the implementing permission class. Copy( ) returns a deep copy of the permission. Intersect( ) returns a new permission that represents the logical intersection of the current and a specified IPermission, whereas Union( ) returns the ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

.NET Framework Security

.NET Framework Security

Brian A. LaMacchia, Sebastian Lange, Matthew Lyons, Rudi Martin, Kevin T. Price
.NET Security and Cryptography

.NET Security and Cryptography

Peter Thorsteinson, G. Gnana Arun Ganesh
ASP.NET Core Security

ASP.NET Core Security

Christian Wenz

Publisher Resources

ISBN: 0596004427Supplemental ContentErrata Page