Open melloc opened 9 years ago
Dear Cody,
I have very little comp sci background. Therefore, I can only investigate these LDAP Libraries through reading several articles and collecting users' opinions from different sources.
This link lists available LDAP libraries that can be used with java. http://directory.apache.org/api/java-api.html:
Then, the article from the following link describes the test that has been used to verify the performance of each library: http://www.dirmgr.com/blog/2011/5/31/comparing-java-ldap-sdk-performance.html
Overall, the UnboundID API, developed by the Unbound Company, is highly recommended due to its good performance and easy to use features. This is also supported by many programmers on the StackOverFlow. http://stackoverflow.com/questions/389746/ldap-java-library
I hope this helps you in some way.
Best, Hangkun
This is similar to what I've got out of my research.
JNDI was apparently the standard for a while, but it has some clunky code, hasn't been updated regularly for awhile, and as the above link shows, is slow.
The Spring LDAP is regularly updated but it seemingly requires you to use Spring already. http://projects.spring.io/spring-ldap/
jLDAP was last updated in August 30, 2013 so it seems like it isn't regularly updated.
UnboundID is regularly updated (last 12-02-2014), is fast, and has nice code. As you can see in the link given above, it has really fast searching, adding and modifying. It is worth noting that the author of the article is an UnboundID worker however. https://www.ldap.com/unboundid-ldap-sdk-for-java?__hstc=224908101.3b1789cf5b02863b110a17e7d31cd26d.1420484012780.1420484012780.1420484012780.1&__hssc=224908101.2.1420484012780&__hsfp=615885394
Apache LDAP API still looks like a work in progress. It's updated regularly with a last update Dec. 29 2014 but even things like the user guide are incomplete. http://directory.apache.org/api/
We should move to using LDAP for authentication. We'll need to find a good library for connecting to and querying LDAP. There are several out there, so they should each be investigated and compared.