java 连接 ldap 报错 100
这个项目要求验证域用户,我就是用连接ldap来验证,但是总是报错LDAP:errorcode49-80090308:DSID-0C0903AA,comment:Accep...
这个项目要求验证域用户,我就是用连接ldap来验证,但是总是报错
LDAP:error code 49 - 80090308: DSID - 0C0903AA,comment: AcceptSecuritycontext error ,data 525,v1772
我的代码如下:
String BASEDN = "dc=combatelecom,dc=com";
Hashtable env = new Hashtable();env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");env.put(Context.PROVIDER_URL,"ldap://10.10.0.13:389/"+BASEDN);env.put(Context.SECURITY_AUTHENTICATION,"simple");env.put(Context.SECURITY_PRINCIPAL,"cn=" + username);//1env.put(Context.SECURITY_CREDENTIALS,password);//2DirContext ctx = new InitialDirContext(env);如果屏蔽1和2两行就能连接成功,但是一带上我自己的账号和密码就报错求大神解救我啊!!!!!!!!!!!! 展开
LDAP:error code 49 - 80090308: DSID - 0C0903AA,comment: AcceptSecuritycontext error ,data 525,v1772
我的代码如下:
String BASEDN = "dc=combatelecom,dc=com";
Hashtable env = new Hashtable();env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");env.put(Context.PROVIDER_URL,"ldap://10.10.0.13:389/"+BASEDN);env.put(Context.SECURITY_AUTHENTICATION,"simple");env.put(Context.SECURITY_PRINCIPAL,"cn=" + username);//1env.put(Context.SECURITY_CREDENTIALS,password);//2DirContext ctx = new InitialDirContext(env);如果屏蔽1和2两行就能连接成功,但是一带上我自己的账号和密码就报错求大神解救我啊!!!!!!!!!!!! 展开
展开全部
个人意见,不一定正确,互相研究一下。
感谢这一行写的不对
env.put(Context.PROVIDER_URL,"ldap://10.10.0.13:389/"+BASEDN)
应该env.put(Context.PROVIDER_URL,"ldap://10.10.0.13:389/")
至于BASEDN写到哪里暂不是很清楚,但觉得不应该跟URL写在一起。
感谢这一行写的不对
env.put(Context.PROVIDER_URL,"ldap://10.10.0.13:389/"+BASEDN)
应该env.put(Context.PROVIDER_URL,"ldap://10.10.0.13:389/")
至于BASEDN写到哪里暂不是很清楚,但觉得不应该跟URL写在一起。
追问
不行的,带不带BASEDN都不行,匿名创建InitialDirContext(env)是可以的
一旦戴上账号和密码就报账号或密码错误
不知道是否是账号或密码要经过处理才行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-14
展开全部
那就是用户的dn写得不正确,或用户名、密码写得不对。
根据你的实际环境,写正确的就好了
根据你的实际环境,写正确的就好了
更多追问追答
追问
DN在匿名登录时是成功的
用户名和密码保证是正确的
是不是其他问题?
追答
username 怎么写的,有BASEDN吗,如果没有添加试试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询