diff --git a/extensions/guacamole-auth-ldap/src/main/java/org/glyptodon/guacamole/auth/ldap/user/UserService.java b/extensions/guacamole-auth-ldap/src/main/java/org/glyptodon/guacamole/auth/ldap/user/UserService.java index 9e9533dd9..7599d5f10 100644 --- a/extensions/guacamole-auth-ldap/src/main/java/org/glyptodon/guacamole/auth/ldap/user/UserService.java +++ b/extensions/guacamole-auth-ldap/src/main/java/org/glyptodon/guacamole/auth/ldap/user/UserService.java @@ -143,8 +143,21 @@ public class UserService { // Build map of users by querying each username attribute separately Map users = new HashMap(); - for (String usernameAttribute : confService.getUsernameAttributes()) - putAllUsers(users, ldapConnection, usernameAttribute); + for (String usernameAttribute : confService.getUsernameAttributes()) { + + // Attempt to pull all users with given attribute + try { + putAllUsers(users, ldapConnection, usernameAttribute); + } + + // Log any errors non-fatally + catch (GuacamoleException e) { + logger.warn("Could not query list of all users for attribute \"{}\": {}", + usernameAttribute, e.getMessage()); + logger.debug("Error querying list of all users.", e); + } + + } // Return map of all users return users;