2012-08-28 456 views
4

当用户通过sAMAccountNamepassword时,我无法进行身份验证。LDAP:如何使用sAMAccountName验证用户?

如果我不follwoing:

env.put(Context.SECURITY_PRINCIPAL, "CN="+username+",OU=Service Accounts,OU=TECH,DC=wawalab2,DC=ins"); 
env.put(Context.SECURITY_CREDENTIALS, password); 

它抛出异常:

javax.naming.AuthenticationException:LDAP:错误代码49 - 80090308:LdapErr:DSID-0C090334,注释:AcceptSecurityContext错误,数据525,vece

Note: I can use Spring LDAP framework too. 

回答

3

首先,525是错误坏DN。您可以看到AD在此链接返回的LDAP错误列表:AD LDAP Error codes

因此,您的DN有误。你想要做的是搜索samAccountName = username,从返回的值中获取DN,并绑定到正确的DN。

+0

感谢您链接到这些错误代码。 – offby1