Kumar
Kumar

Reputation: 166

LDAP Authentication Issue

I have to connect to LDAP but i am not able to connect using Java code and same is getting connected using LDAPAdmin tool.

String url = "ldap://host name:389";
ldapEnv.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");   
ldapEnv.put(Context.PROVIDER_URL,  url);   
ldapEnv.put(Context.SECURITY_AUTHENTICATION, "simple");
ldapEnv.put(Context.SECURITY_PRINCIPAL, "CN=username");
ldapEnv.put(Context.SECURITY_CREDENTIALS, "#1223");

ERROR

  Search error: javax.naming.AuthenticationException: [LDAP: error code 49 -
  80090308: LdapErr: DSID-0C0903CF, comment: AcceptSecurityContext error, data 52e, v2580

Upvotes: 0

Views: 1262

Answers (2)

ROOT
ROOT

Reputation: 1775

once look at this one.. this works fine for me this may helps you. thanks..

import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.BasicAttribute;
import javax.naming.directory.BasicAttributes;
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapContext;
public class LdapContextCreation {
    public static void main(String[] args) {
        LdapContextCreation ldapContxCrtn = new LdapContextCreation();
        LdapContext ctx = ldapContxCrtn.getLdapContext();
    }
        public LdapContext getLdapContext(){
            LdapContext ctx = null;
            Hashtable env = new Hashtable();
            env.put(Context.INITIAL_CONTEXT_FACTORY,  "com.sun.jndi.ldap.LdapCtxFactory");
            env.put(Context.SECURITY_AUTHENTICATION, "Simple");  
            env.put(Context.SECURITY_PRINCIPAL, "cn=company,dc=example,dc=com");         
            env.put(Context.SECURITY_CREDENTIALS, "pasword");          
            env.put(Context.PROVIDER_URL, "ldap://localhost:389"); 
            try{
            ctx = new InitialLdapContext(env, null);           
            System.out.println("Connection Successful.");  
            }catch(NamingException nex){       
                System.out.println("LDAP Connection: FAILED");      
                nex.printStackTrace();
                }      
            return ctx;
                }

        }

Upvotes: 1

Sachin
Sachin

Reputation: 394

Have a look at the error codes here - http://www-01.ibm.com/support/docview.wss?uid=swg21290631

data 52e - According to the link, 52e means invalid credentials.

Upvotes: 0

Related Questions