Java 如何使用JNDI创建新的基本DN

Java 如何使用JNDI创建新的基本DN,java,ldap,jndi,opends,Java,Ldap,Jndi,Opends,我想使用JNDI在OpenDS中创建一个新的基本DN(dc=test,dc=dom),但不知道如何进行 我尝试使用: createSubcontext(“dc=test,dc=com”,属性) 我确信这不是正确的方法,因为它只是在以下方面失败了: javax.naming.NameNotFoundException:[LDAP:错误代码32-无法添加提供的条目dc=test,dc=dom,因为其后缀未定义为目录服务器中的后缀之一];剩余名称“dc=test,dc=dom” 使用JNDI可以做

我想使用JNDI在OpenDS中创建一个新的基本DN(dc=test,dc=dom),但不知道如何进行

我尝试使用:

createSubcontext(“dc=test,dc=com”,属性)

我确信这不是正确的方法,因为它只是在以下方面失败了:


javax.naming.NameNotFoundException:[LDAP:错误代码32-无法添加提供的条目dc=test,dc=dom,因为其后缀未定义为目录服务器中的后缀之一];剩余名称“dc=test,dc=dom”


使用JNDI可以做到这一点吗?

是的,这是可能的,但这不是推荐的方法。 OpenDS(它是主动开发的fork,OpenDJ)要求在添加top条目之前在配置中声明后缀。 使用dsconfig添加后缀是一个简单的命令,但可以通过LDAP完成。只需将ds cfg base dn属性添加到条目dn:ds cfg backend id=userRoot,cn=Backends,cn=config,后缀值为“dc=test,dc=com”

我建议使用dsconfig命令,它还将在一次调用中创建默认索引和所需的所有内容,如我的博客中所述:

您还可以打开审核日志记录,运行dsconfig以查看执行的所有LDAP操作

亲切问候,, 卢多