Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to embed a LDAP server to provide custom data
    primarykey
    data
    text
    <p>I use a closed source application that can be configured to use a LDAP directory for getting group memberships of a user. The LDAP query can be configured at will. Now I need to integrate various sources that come from applications that provide an API. </p> <p>I would be able to do this (pseudo code)</p> <pre><code>String[] getGroupmembershipsFromAll( String username ) { String[] groups = new String[]; groups.add( ApiForAppOne.getUserGroups( username ) ); groups.add( ApiForAppTwo.getUserGroups( username ) ); groups.add( ApiForAppThree.getUserGroups( username ) ); return groups; } </code></pre> <p>My idea is to expose this function via "something" that implements the LDAP RFC. The final step would then to be configure the application with servername:389 and this query:</p> <pre><code>(username='username@domain') </code></pre> <p>(The common criterion that all sources use to identify the user is the Windows AD principal in the form user@domain)</p> <p>Do you know of a way to achieve this ? Implementing RFC4511 could be the solution but I don't want to start from scratch because the RFC is quite lengthy. Perhaps it is a viable solution to build something based on OpenDS/OpenDJ or ApacheDS but I have no idea they were designed with this in mind. On the other side an elegant solution might be persisting the API results in the LDAP but I don't know if this data must be retrieved using JPA again or if its valid to retrieve it using a LDAP query. I read something about the uboundid LDAP server SDK, perhaps this is another option.</p> <p>All of this are just ideas, I have no experience in this area. Ideas are very appreciated.</p> <hr> <p>Thanks a lot for this information. I took a look at unboundid sdk and the example that starts up a ldap server and imports a ldif. But your remarks about productive use make me think I perhaps consider a different solution although I definitely will come back to unboundid when I need to write jndi or ldap unit tests.</p> <p>I'm now able to describe my needs better, perhaps this can be achieved by unboundid or you know another solution that makes me achieve this. I will need to intercept queries, then invoke the API (see example above) in order to retrieve the data and then feed it to the underlying ldap directory. Perhaps unboundid offers an interface to this. Do you know something about this ? Or more about the design of ApacheDS ? The reason for this interception is that the applications I can query contain some 100000 entries and I only want to copy those to the ldap who are needed.</p> <p>Writing about this I see another option: perhaps it is possible to do some aop in order to intercept the call. What do you think ?</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload