在我的本地(本地),我正在使用Sun ONE LDAP服务器,在部署我的应用程序的地方,他们使用MS AD。我将用户名和密码(LDAP用户名和密码)的值存储在一个表中。在Sun ONE中,我在用户名之前加上“cn =”,在我的最后我能够连接到LDAP服务器,但是在部署应用程序的地方,get bind错误: -
Bind: Error: netscape.ldap.LDAPException: error result (49); 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece
我的连接代码如下: -
try {
conn.connect(ldapHost,ldapPort);
}
catch(LDAPException ldapexception)
{
ldapexception.printStackTrace(System.out);
}
try {
conn.bind(ldapVersion,loginDN,loginDN_Password);
}
catch(LDAPException ldapexception)
{
ldapexception.printStackTrace(System.out);
}
我在绑定时收到此错误 我搜索了这个错误,我发现登录凭据是问题所在。
但是我已经在他们的结尾验证了登录凭据是正确的,我最终的唯一区别是他在我的用户名之前加上“cn =”而他们没有。 我试过做同样的事,但仍然得到同样的错误。
有人可以帮我吗?
答案 0 :(得分:0)
BIND请求的目的是在客户端和服务器之间交换身份验证信息。如果BIND成功,则会在BIND响应中将SUCCESS结果代码与任何控件一起返回给客户端。 名称或绑定DN 必须是RFC4511和RFC4514中定义的LDAP DN,因此它必须具有命名属性(在您的情况下为cn)。