IhawuPrincipalResolver
Default PrincipalResolver: maps the current Authentication to an IhawuPrincipal:
userId← the principal username (or Authentication.getName);roles← authorities prefixedROLE_, with the prefix stripped;attributes← the username plus any map-valueddetails.
Unauthenticated or AnonymousAuthenticationToken requests resolve to null (fail closed).