- Authorization authorization = null;
- User authenticatingUser;
- Set<KerberosPrincipal> kerberosPrincipals = subject.getPrincipals(KerberosPrincipal.class);
- if (kerberosPrincipals.isEmpty()) {
- if (callbackHandler == null) {
- authorization = userAdmin.getAuthorization(null);
- }
- if (authenticatedUser == null) {
- return false;
+ Authorization authorization;
+ if (callbackHandler == null) {// anonymous
+ authorization = userAdmin.getAuthorization(null);
+ } else {
+ User authenticatingUser;
+ Set<KerberosPrincipal> kerberosPrincipals = subject.getPrincipals(KerberosPrincipal.class);
+ if (kerberosPrincipals.isEmpty()) {
+ if (authenticatedUser == null) {
+ if(log.isTraceEnabled())
+ log.trace("Neither kerberos nor user admin login succeeded. Login failed.");
+ return false;
+ } else {
+ authenticatingUser = authenticatedUser;
+ }