【发布时间】:2020-10-05 14:03:59
【问题描述】:
我正在尝试使用 Spring Boot 在 Active Directory 中创建用户,正在创建用户,但我无法访问该创建的用户。用户创建代码如下:
protected void createUsersAD(String userName, String orgName){
Name dn = buildUserDnn(userName);
DirContextAdapter context = new DirContextAdapter(dn);
context.setAttributeValues("objectclass",
new String[] { "top", "person", "organizationalPerson", "inetOrgPerson" });
context.setAttributeValue("cn", userName);
if (orgName != "")
context.setAttributeValue("ou", orgName);
context.setAttributeValue("givenName",userName);
context.setAttributeValue("displayName", userName);
context.setAttributeValue("name", userName);
context.setAttributeValue("userPrincipalName",userName+"@"+config.getDomainName());
String newQuotedPassword = "\"" + password + "\"";
byte[] newUnicodePassword = newQuotedPassword.getBytes("UTF-16LE");
context.setAttributeValue("unicodePwd",newUnicodePassword);
//context.setAttributeValue("userAccountControl", Integer.toString(512));
//context.setAttributeValue("sAMAccountName", userName);
ldapTemplate.bind(context);
LOGGER.debug("User created successfully INTO AD.");
}
使用相同的代码,我可以在 LDAP 中创建用户并且也可以访问该用户。
当我比较用户时,我观察到 userAccessControl 被设置为 546,这意味着(546(十进制)的值是 0x222 十六进制,意味着:普通帐户,禁用,不需要密码。)
我尝试设置 userAccountControl 的值但出现错误:
EXCEPTION======org.springframework.ldap.OperationNotSupportedException:[LDAP:错误代码 53 - 0000052D:SvcErr:DSID-031A1236,问题 5003 (WILL_NOT_PERFORM),数据 0
得到一个错误:
2020-10-05 19:10:26.167 DEBUG 12304 --- [o-auto-1-exec-4] c.a.c.security.JwtAuthenticationFilter : JwtAuthenticationFilter attemptAuthentication authenticationToken com.atos.config.security.SelfServiceUserPasswordAuthToken@e3ac519c: Principal: cucumber_customer_admin_multi; Credentials: [PROTECTED]; Authenticated: false; Details: null; Not granted any authorities
2020-10-05 19:10:26.167 DEBUG 12304 --- [o-auto-1-exec-4] c.a.c.security.JwtAuthenticationFilter : JwtAuthenticationFilter authenticationManager used class com.atos.config.security.SelfServiceAuthenticationManager
2020-10-05 19:10:26.168 INFO 12304 --- [o-auto-1-exec-4] c.a.c.s.SelfServiceAuthenticationManager : authenticate called
2020-10-05 19:10:26.169 DEBUG 12304 --- [o-auto-1-exec-4] ctiveDirectoryLdapAuthenticationProvider : Processing authentication request for user: cucumber_customer_admin_multi
2020-10-05 19:10:26.450 DEBUG 12304 --- [o-auto-1-exec-4] ctiveDirectoryLdapAuthenticationProvider : Authentication for cucumber_customer_admin_multi@amosonline.io failed:javax.naming.AuthenticationException: [LDAP: error code 49 - 80090308: LdapErr: DSID-0C090436, comment: AcceptSecurityContext error, data 52e, v4563
【问题讨论】:
-
请提供有关此问题的更新..