哪位小伙伴有遇到过在向AD中新增用户时,用户名字中含有逗号,添加时报错的问题,请帮帮忙吧!
使用的DN语法为CN=userName,DC=User,DC=SG...
我在网上搜到需要将逗号转译,我将逗号转译为\, \2c \5c添加,还是报错,错误信息如下:
javax.naming.InvalidNameException: cn=Tan Wai Ling\, Joyce (Chen WeiLing\, Joyce),ou=Users,ou=SG,dc=infinitumfa,dc=net: [LDAP: error code 34 - 00002081: NameErr: DSID-03050EB3, problem 2003 (BAD_ATT_SYNTAX), data 0, best match of:\n\t'CN=Tan Wai Ling\, Joyce (Chen WeiLing\, Joyce),OU=Users,OU=SG,DC=infinitumfa,DC=net'\n\u0000]; remaining name 'cn=Tan Wai Ling\,Joyce (Chen WeiLing\, Joyce),ou=Users,ou=SG,dc=infinitumfa,dc=net',Please contact the administrator
以下是代码:
Attributes attrs = new BasicAttributes(true);
attrs.put("objectClass", "user");
attrs.put("samAccountName", user);
attrs.put("sn", name);
attrs.put("displayName", name);
attrs.put("givenName",name);
attrs.put("userPrincipalName", user + "@" + userPrincipalNa);
String password = "\"" + defaultPassword + "\"";
byte[] unicodePassword = password.getBytes("UTF-16LE");
attrs.put("unicodePwd",unicodePassword);
String newName = name.replaceAll(",","\\\\,");
attrs.put("cn", newName);
dc.createSubcontext("cn=" + newName + "," + baseDn, attrs);