This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
It's mainly used in web/enterprise projects, to identify a user. For example, if you use a proper login system for a web application, the web container will make an instance of a Principal to identify the logged in user.