How to specify LDAP user name for connecting to Active Directory?

I'm trying to integrate my program with LDAP. I have an Active Directory server here, which apparently speaks LDAP. I want to see what's on the server before I go off trying to debug my own code. I found a program called jxplorer which claims to be able to talk to LDAP servers.

However, I can't seem to make it work. I'm using settings:

  • Host: (IP address of my AD server)
  • Port: 389
  • Protocol: LDAPv3
  • Base DN: OU=MyCompany,DC=domaincontroller,DC=local (a string I got from somebody else at my company who's written some LDAP code here before)
  • Level: User+Password
  • User DN, Password: (my user name and password on this Exchange server)

The error I'm getting is:

javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID=0C090334, comment: AcceptSecurityContext error, data 525, vece ]

The other LDAP dude here says 525 is "user not found", and hypothesizes that perhaps the user name needs to be specified in "LDAP nomenclature".

Does anyone know how to connect to AD with jxplorer?


Figured out the way: it's not your user log-in. It's an LDAP DN like:

CN=My Name,OU=My Company,DC=server,DC=local

Pass the LDAP user id and password directly hard coded.

example:

     Hashtable env = new Hashtable();         
     env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.SECURITY_AUTHENTICATION,"simple");
env.put(Context.REFERRAL, "follow");
env.put(Context.SECURITY_PRINCIPAL,"adminuserid");
env.put(Context.SECURITY_CREDENTIALS,"adminPassword");
env.put(Context.PROVIDER_URL,"ldapUrllink");
DirContext ctx = new InitialDirContext(env);

This should work.

thanks Sajith