if (clientRequest == null) {
throw new IllegalArgumentException("No client request provided");
}
this.id = clientRequest.getRemoteUser();
this.clientRequest = clientRequest;
this.attributeResolver = new PrincipalAttributeResolver(clientRequest);
this.userProfile = userProfile;
}