I am in the preparation phase of testing an application that will be using LDAP for user authentication. What are some tips or advice you might have for this endeavor?
I don’t have a great understanding of LDAP but I believe all that will be used is the application client calls to LDAP with a username and sees if the password matches. Is that an accurate description? Also, what are some edge cases to test? Thanks.
LDAP authentication is often (but not always) a 2-step process: first the application does an LDAP query to locate the “distinguished name” (dn) of the account the user’s trying to authenticate to, then it tries to log in (“bind”, in LDAP parlance) as that dn, using the user-supplied password.
If the “bind” attempt works, the application knows the password is correct. (The LDAP server is likely not configured to allow the application to actually extract the password and do the comparison itself, for obvious security reasons).
An LDAP-enabled application will typically require a way to configure:
You will most likely need to support SSL, so you don’t send the user’s password to the LDAP server in cleartext.