永发信息网

LDAP如何增加用户

答案:3  悬赏:30  手机版
解决时间 2021-11-27 18:57
LDAP如何增加用户
最佳答案
增加用户
public boolean addUserToLdap(String userCn) {
LdapContext ctx = getLdapConnection(); //AD认证,获取Ldap连接对象ctx
Attributes attrsbu = new BasicAttributes(true);
BasicAttribute objclassSet = new BasicAttribute("objectclass");
for (String _class : LdapConfig.userObjectClass.split(",")) {
objclassSet.add(_class.trim()); //加入一些基本元素top,person,organizationalPerson,user
}
boolean isExist = this.searchUser(ctx, userCn); //添加用户前先查找AD中是否存在该用户
if (isExist == false){
attrsbu.put(objclassSet);
attrsbu.put(new BasicAttribute("cn", userCn)); //userCn:要添加的用户
attrsbu.put(new BasicAttribute("sAMAccountName", userCn));
attrsbu.put(new BasicAttribute("sn", userCn));
attrsbu.put(new BasicAttribute("displayName", userCn)); //AD中显示的名称
attrsbu.put(new BasicAttribute("userPrincipalName", userCn + LdapConfig.domainName));
try {
String userDn = "cn=" +userCn + ","+ LdapConfig.userRootDn;
ctx.createSubcontext(userDn, attrsbu); //添加用户到Ldap
System.out.println("[addUserToLdap] Add User:" + userDn);

ModificationItem[] mods = new ModificationItem[2];
//此密码必须注意:得到的字符串是""password""这种格式
String newQuotedPassword = LdapConfig.user_default_password;
byte[] newUnicodePassword = newQuotedPassword.getBytes("UTF-16LE");
mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE,
new BasicAttribute(LdapConfig.password_field,newUnicodePassword));
mods[1] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE,
new BasicAttribute(LdapConfig.userAccountControl,Integer.toString(
UF_NORMAL_ACCOUNT
+ UF_PASSWORD_EXPIRED
+ UF_DONT_EXPIRE_PASSWD)));
ctx.modifyAttributes(userDn, mods); //更改用户密码和权限
} catch (Exception e1){
e1.printStackTrace();
destroyLdapConnection(ctx);
return false;
}
}else{
System.out.println("isExist :" + isExist + "用户:" + userCn + "已存在");
}
destroyLdapConnection(ctx);
return true;
}
全部回答
例子,如:user 属于 OU=lew,dc=example,dc=com
objectClass: person 就可以了。写ldif文件
创建文件test.lidf
文件内容:
dn:OU=lew,dc=example,dc=com
objectclass:person
Name:zhangsan
Tel:13412345678

执行以下命令
ldapadd -x -D 用户名 -w 口令 -f test.ldif
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
网恋私奔三年。开始还联系父母。最近两年和任
it应届生找工作问题?
50分四川民居邮票价格
油桃生产在什么地方
求神造txt百度云。
求教刀妹线上怎么打蒙多和蛤荸n≤
我是浙江温州永嘉县大山底村村民,大山底村什
泰达物流地址好找么,我有些事要过去,
为什么香蕉干越吹越软呢??
黄金菊适合在室内种植吗
农行atm(前进南路农发行小区对面)地址好找么
求助厌氧胶MSDS
卫浴五金铜镀铬,304不锈钢哪个最防锈
邮储银行夕会是总结一天的还是一周的
用友T6记账流程
推荐资讯
刚买的aj11传奇蓝帮忙鉴定一下
北京八达岭国际旅行社地址在哪,我要去那里办
2.03×5.8+2.03×3.2巧算谁会?
买了一双aj11的鞋不知道真假
马鬃苗族乡地址在哪,我要去那里办事
天下黄金怎么去啊,有知道地址的么
我记得在希腊神话中有一个故事是一对兄妹在海
John had me to do this, but he didn't .A.
我是146班的一员翻译
杨记烩面怎么去啊,有知道地址的么
绿岛牙室在哪里啊,我有事要去这个地方
3相交流发电机零线不接地为什么火线对地有220
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?