LDAP: error code 49 – 80090308: LdapErr: DSID-0C0903A9,comment: AcceptSecurityContext error,data 52e,v1db1
我知道“52e”代码是用户名是有效的,但密码无效.我在我的apache工作室使用相同的用户名和密码,我能够成功地建立到LDAP的连接.
- String userName = "*******";
- String password = "********";
- String base ="DC=PSLTESTDOMAIN,DC=LOCAL";
- String dn = "cn=" + userName + "," + base;
- Hashtable env = new Hashtable();
- env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
- env.put(Context.PROVIDER_URL,"ldap://******");
- env.put(Context.SECURITY_AUTHENTICATION,"simple");
- env.put(Context.SECURITY_PRINCIPAL,dn);
- env.put(Context.SECURITY_CREDENTIALS,password);
- LDAPAuthenticationService ldap = new LDAPAuthenticationService();
- // LdapContext ctx;
- DirContext ctx = null;
- try {
- ctx = new InitialDirContext(env);
我的错误在这一行:ctx = new InitialDirContext(env);
我不知道究竟是什么导致这个错误.
解决方法
数据52e –
Returns when username is valid but password/credential is invalid.
你可能需要类似的东西
- String dn = "cn=" + userName + "," + "CN=Users," + base;