This topic has not yet been written. The content below is from the topic description.
The JAAS APIs use the existing Java 2 java.security.Principal interface to represent a principal, which is essentially just a typed name. During the authentication process, a subject is populated with associated identities, or principals. A subject may have many principals. For example, a person may have a name principal (John Doe), a social security number principal (123-45-6789), and a user name principal (johnd), all of which help distinguish the subject from other subjects.