LDAP身份验证问题

时间:2016-04-14 15:52:38

标签: java ldap

我必须连接到LDAP,但我无法使用Java代码进行连接,并且使用LDAPAdmin工具进行连接。

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

2 个答案:

答案 0 :(得分:1)

一旦看到这一个..这对我来说很好,这可能对你有所帮助。 感谢..

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;
                }

        }

答案 1 :(得分:0)

请在此处查看错误代码 - http://www-01.ibm.com/support/docview.wss?uid=swg21290631

data 52e - 根据链接,52e表示凭证无效。