如何在ldap中添加信息

brooklyng60 2010-01-15 04:20:32
我的LDAP server的配置信息如下:
#######################################################################
# BDB database definitions
#######################################################################

database bdb
suffix "dc=my-domain,dc=com"
rootdn "cn=manager,dc=my-domain,dc=com"
# Cleartext passwords, especially for the rootdn, should
# be avoid. See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
rootpw secret
# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory %LOCALSTATEDIR%/openldap-data
# Indices to maintain
index objectClass eq


我的客户端程序如下:

Properties env = new Properties();
String ldapURL = "LDAP://192.168.10.251:389/dc=my-domain,dc=com";
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.jndi.ldap.LdapCtxFactory");
...然后是用户名,密码
用户名是:cn=manager,dc=my-domain,dc=com
密码就没什么了
env.put(Context.PROVIDER_URL, ldapURL);
DirContext ctx = null;
try {
ctx = new ...Context(env);
} catch (NamingException e1) {
e1.printStackTrace();
}
..以上都是连接LDAP,没问题————————————
try {
String newUserName = "Alex";
BasicAttributes attrs = new BasicAttributes();
BasicAttribute objclassSet = new BasicAttribute("objectclass");
objclassSet.add("person");
objclassSet.add("top");
objclassSet.add("organizationalPerson");
objclassSet.add("inetOrgPerson");
attrs.put(objclassSet);
attrs.put("sn", newUserName);
attrs.put("uid", newUserName);
attrs.put("cn", newUserName);

ctx.createSubcontext("cn=manager,dc=my-domain,dc=com" , attrs);
} catch (Exception e) {
System.out.println(e);
}

运行程序总是报错:
javax.naming.directory.InvalidAttributeValueException: [LDAP: error code 21 - objectclass: value #3 invalid per syntax]; remaining name 'cn=manager,dc=my-domain,dc=com'

请高手指点下是什么原因,或者提供些学习资料,刚开始接触LDAP,感觉有很多困难,请大家帮忙支持下,非常感谢!
...全文
273 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
brooklyng60 2011-06-20
  • 打赏
  • 举报
回复
无效的属性值,好象是具体值的问题,这个问题我很早就解决了
现在这些操作都抽象的很底层了,原来用的都是LDAP自身的属性,有些有格式限制。
现在我用的都是自定义的属性,我自己定义格式和数据类型了,没这些问题
你要不嫌麻烦,可以把文件发我,帮你测试下
brooklyng60@yahoo.com.cn
shanghaiwwc 2011-06-19
  • 打赏
  • 举报
回复
兄弟,我也有同样的问题。你现在解决了吗,给点帮助,谢谢。

50,543

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧