Representation of an authenticated
Principal
once an
Authentication
request has been successfully authenticated by the
AuthenticationManager.authenticate(Authentication)
method.
Implementors typically provide their own representation of a
Principal
,
which usually contains information describing the
Principal
entity, such
as, first/middle/last name, address, email, phone, id, etc.
This interface allows implementors to expose specific attributes of their custom
representation of
Principal
in a generic way.