diff --git a/extensions/guacamole-auth-ldap/src/main/java/org/apache/guacamole/auth/ldap/LDAPConnectionService.java b/extensions/guacamole-auth-ldap/src/main/java/org/apache/guacamole/auth/ldap/LDAPConnectionService.java index a5ee4b3c5..c2914f7c1 100644 --- a/extensions/guacamole-auth-ldap/src/main/java/org/apache/guacamole/auth/ldap/LDAPConnectionService.java +++ b/extensions/guacamole-auth-ldap/src/main/java/org/apache/guacamole/auth/ldap/LDAPConnectionService.java @@ -150,6 +150,8 @@ public class LDAPConnectionService { bindRequest.setDn(userDN); bindRequest.setCredentials(password); ldapConnection.bind(bindRequest); + if (ldapConnection.isConnected() && ldapConnection.isAuthenticated()) + return ldapConnection; } @@ -162,7 +164,8 @@ public class LDAPConnectionService { CredentialsInfo.USERNAME_PASSWORD); } - return ldapConnection; + throw new GuacamoleInvalidCredentialsException("Authentication failed.", + CredentialsInfo.USERNAME_PASSWORD); }