Carsten

LDAP authentication with a bind is supported in the JNDIRealm included with Tomcat 4.1

John.


Carsten Burghardt wrote:

Hi,

I tried to get a ldap-authentification with domino but noticed that the current code (I checked tomcat 4.0.6 so if this is obsolete in a newer version forgive me) checks the given password with the retrieved one. This doesn't work as domino uses a different hash algorithm.
So I changed the getUserDN method from the JNDIRealm to auth with a bind.

Here's my code:

---------
protected String getUserDN(DirContext context,
String username, String credentials)
throws NamingException {

if (debug >= 2)
log("getUserDN(" + username + ")");
if (username == null)
return (null);
if ((userFormat == null) || (userPassword == null))
return (null);

// Retrieve the user password attribute for this user
String dn = userFormat.format(new String[] { username });
if (debug >= 3)
log(" dn=" + dn);

context.addToEnvironment(Context.SECURITY_PRINCIPAL, dn);
context.addToEnvironment(Context.SECURITY_CREDENTIALS, credentials);
if (debug >= 3)
log("Doing a lookup");
Object user = context.lookup(dn);
if (user == null)
{
log("Lookup failed");
return (null);
}

return (dn);

}
---------



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to