This week's book giveaways are in the iOS and Features new in Java 8 forums. We're giving away four copies each of Barcodes with iOS: Bringing together the digital and physical worlds and Core Java for the Impatient and have the authors on-line! See this thread and this one 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.