OpenIDM needs the OpenICF LDAP Connector to use LDAP directories as external resources. Lately, i discovered a bug which appears when calling the openidm.query() javascript function on a directory resource handled by the LDAP connector. Let’s take this code :

var map = {"query": { "Equals": {"field" : "telephoneNumber","values" : ["0123456789"]}}};
var res = openidm.query("system/ldap/account", map);

If there is an entry in the directory having only that value as a telephone number, it will be returned without any problem. But if there is an entry with many telephone number values (telephoneNumber is a multivalued attribute) and even if one of these is « 0123456789 », that entry won’t be returned. However, if you take a look at the directory logs, you will note that the directory is returning it, so i guess there is a bug in the way OpenIDM handles the received entries. A Solution could be making a copy of the value you know you will search for later using openidm.query() and put it in a single-valued attribute.

Les derniers articles par janua (tout voir)