if "admin" user not found, log severe warning only but keep running, drop roles qualified by the not found user

This commit is contained in:
Axel Uhl committed 2020-07-24 08:00:34 +02:00
1 parent 9c665b3820
commit 8cce5a7a14
1 file changed
+8 -7
@@ -232,14 +232,15 @@ public class DomainObjectFactoryImpl implements DomainObjectFactory {
final User userQualifierProxy = roleWithUserQualifierProxy.getQualifiedForUser();
if (userQualifierProxy != null) {
final User resolvedUserQualifier = users.get(userQualifierProxy.getName());
if (resolvedUserQualifier == null) {
throw new UserManagementException("Unable to resolve user named "+userQualifierProxy.getName()+
" which serves as a role qualifier for role "+roleWithUserQualifierProxy.getName()+
" for user "+user.getName());
}
user.removeRole(roleWithUserQualifierProxy);
user.addRole(new Role(roleWithUserQualifierProxy.getRoleDefinition(),
roleWithUserQualifierProxy.getQualifiedForTenant(), resolvedUserQualifier));
if (resolvedUserQualifier == null) {
logger.severe("Unable to resolve user named "+userQualifierProxy.getName()+
" which serves as a role qualifier for role "+roleWithUserQualifierProxy.getName()+
" for user "+user.getName()+". Removing role.");
} else {
user.addRole(new Role(roleWithUserQualifierProxy.getRoleDefinition(),
roleWithUserQualifierProxy.getQualifiedForTenant(), resolvedUserQualifier));
}
}
}
}