现在在做Java读取AD域的,包含添加用户添加用户组添加组织单元,现在遇到几个问题麻烦各位高手给我支支招1、添加用户时怎么把用户加入相应的组里面,可能有多个,使用memberOf属性吗?...
现在在做Java读取AD域的,包含添加用户 添加用户组 添加组织单元,现在遇到几个问题 麻烦各位高手给我支支招
1、添加用户时怎么把用户加入相应的组里面,可能有多个,使用memberOf属性吗?我是这样写的attrsbu.put("memberOf","CN=qqqqqq,"+ ou); 其中ou是我服务器上的组织单元 如:ou=perple,ou=manager,ou=集团,这样写添加用户时就出错了:javax.naming.OperationNotSupportedException: [LDAP: error code 53 - 0000209A: SvcErr: DSID-031A0FBB, problem 5003 (WILL_NOT_PERFORM), data 0。是解析的问题吗?不加attrsbu.put("memberOf","CN=qqqqqq,"+ ou); 就可以添加进去
2、添加用户时怎么把密码也加入进去,a、BasicAttribute pass=new BasicAttribute("userpassword");
pass.add("abc@12$12");
attrsbu.put(pass); 这样可以创建用户成功,可是密码不是我给我,是要通过什么加密才能写进去吗?
3、怎么把用户从A用户组移动的B用户组,怎么添加到某个用户组??
麻烦大家帮我看看问题。。。。小弟感激不尽。。。。
现在密码修改可以了,要有证书:
ModificationItem[] mods = new ModificationItem[1];
String newQuotedPassword = "\"" + serInfo.getPassword() + "\"";
byte[] newUnicodePassword = newQuotedPassword.getBytes("UTF-16LE");
mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE,new BasicAttribute("unicodePwd",newUnicodePassword));
ctx.modifyAttributes("cn=" + userInfo.getNumber() + "," + tempOU,mods);
System.out.println("密码成功");
开始移动用户组怎么做?就是修改用户的OU??
展开