Hello Mahara people,
I dont know where to post this so I'll put it here.
I'm running Mahara 1.2.2 with several institutions, each using a different LDAP server for authentication.
A normal procedure is when guest is logging in, Mahara loops through all LDAP servers defined as institutions auth methods. When binding with certain LDAP is successful loop will be stopped and Mahara will login user.
However if one of LDAP servers is experiencing difficulties, i.e. network problems, server unavailable, expired SSL certificate etc, Mahara will throw an exception and loop will be broken, resulting as bad-login. In another words, if any of LDAP servers goes offline authentication will be "disabled" for all institutions despite the fact that each institution uses different LDAP server. The problem is in auth/ldap/lib.php line #146
throw new AuthUnknownUserException('Cannot connect to any LDAP hosts');
I solved the issue by commenting this line and adding code for logging LDAP errors, though I would like to avoid code hacking. Will someone consider this for upcoming releases?
Thanks for reading.
Cheers,
Andrej
]]>