编程语言
首页 > 编程语言> > java – LDAP:如何使用sAMAccountName对用户进行身份验证?

java – LDAP:如何使用sAMAccountName对用户进行身份验证?

作者:互联网

当用户传递sAMAccountName和密码时,我无法进行身份验证.

如果我做了下面的话:

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: error code 49 – 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 525, vece

Note: I can use Spring LDAP framework too.

解决方法:

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

所以你的DN不好.您要做的是搜索samAccountName = username,从返回的值中获取DN,并使用该适当的DN绑定.

标签:java,spring,ldap,spring-ldap
来源: https://codeday.me/bug/20190630/1331954.html