Principal
A principal represents the identity and role of a user and acts on the user's behalf. Role-based security in the .NET Framework supports three kinds of principals:
- Generic principals represent users and roles that exist independent of Windows NT and Windows 2000 users and roles.
- Windows principals represent Windows users and their roles (or their Windows NT and Windows 2000 groups). A Windows principal can impersonate another user, which means the principal can access a resource on a user's behalf while presenting the identity that belongs to that user.
- Custom principals can be defined by an application in any way that is needed for that particular application. They can extend the basic notion of the principal's identity and roles.