Cómo crear una nueva base DN usando JNDI
Pregunta
Me gustaría crear una nueva base DN (DC= Test, DC= DOM) en los opendaciones usando JNDI, pero no estoy seguro de cómo ir al respecto.
Intenté usar:
context.createsubcontext ("dc= prueba, dc= com", atributos);
que estoy seguro de que no es el enfoque correcto, ya que simplemente falla con lo siguiente:
javax.naming.NameNotFoundException: [LDAP: error code 32 - The provided entry dc=test,dc=dom cannot be added because its suffix is not defined as one of the suffixes within the Directory Server]; remaining name 'dc=test,dc=dom'
¿Es esto posible hacer usando JNDI?
Solución
Sí, es posible, pero no es la forma recomendada. Opends (y se desarrolla activamente FORK, OPENDJ) requiere que declare el sufijo en la configuración antes de poder agregar la entrada superior. Agregar un sufijo es un comando simple con DSCONFIG, pero se podría hacer sobre LDAP.Simplemente agregue el atributo DS-CFG-BASE-DN a la entrada DN: DS-CFG-Backend-ID= userroot, CN= backends, CN= config, con el valor del sufijo "DC= prueba, DC= COM"
Recomendaría usar el comando DSCONFIG, que también creará índices predeterminados y todo lo necesario en una sola llamada, como se describe en mi blog: http://ludopoitou.wordpress.com/2009/01/20/opends-tips-multiple-suffixes-with-opends/
También puede activar el registro de auditoría, ejecute el DSCONFIG para ver todas las operaciones de LDAP ejecutadas entonces.
Amable Saludos, LUDO