8

我正在尝试构建一个将在 Apache Tomcat 7.0 上使用 LDAP 服务器的 Web 应用程序。浏览互联网,我没有找到足够的文章来证明为什么使用一台服务器而不是另一台服务器。

因此,我求助于这里有经验的人,他们对不止一台 LDAP 服务器有足够的经验。

我的要求是:免费、易于安装和使用(良好的 gui)和足够的 API,以便我能够从基于 java 的应用程序中插入用户、组、执行查找等。它还应该提供良好的安全性。

预先感谢您的关注

4

3 回答 3

12

我会推荐使用openLDAP作为服务器,UnboundID作为 LDAP SDK,JXPlorerApacheDirectoryStuido作为对 ldap 的 GUI 控制——这可能涵盖了您的所有要求。

以上所有软件都是免费的:

  • 如果不计算 ActiveDirectory,openLDAP 可能是广泛使用的 LDAP 服务器。它有据可查,很容易得到支持。

  • UnboundID 库是我所体验过的最好的库,而且在我看来——目前最友好、功能最丰富的 LDAP 库。查看此功能比较矩阵

  • UI 工具的复杂性不同 - JXplorer 是更简单的工具。

于 2012-05-31T07:30:48.557 回答
5

周围有很多 LDAP 服务器。我正在使用OpenDJ,它是在较旧的OpenDS上开发的,我从来没有遇到过这两个问题。

如果您喜欢 Apache,您可以使用Apache Directory,但其中最著名的可能是OpenLDAP

关于API使用 Java 访问目录,这不是要在特定 LDAP 服务器实现中寻找的功能,因为它是 Java SDK 中的标准:魔术词是JNDI

JNDI 对 LDAP 的作用类似于 JDBC 对 Oracle 的作用——它提供了一个标准 API,用于使用类似于 JDBC 驱动程序的服务提供者接口 (SPI) 与命名和目录服务进行交互

(来源:LDAP 和 JNDI:永远在一起,我建议查看这个优秀的教程)

于 2012-05-31T07:32:07.320 回答
3

在 Windows 环境中,您还可以考虑使用轻量级目录服务,这是一个小型且免费(如啤酒)的 LDAP 服务器。

优点:

  1. 安装非常简单
  2. 开箱即用的多主复制
  3. 它可以将身份验证请求链接到 Active Directory,使用 userProxy 或 userProxyFull 对象类。
  4. 管理员帐户可以是 Windows 域帐户

缺点:

  1. 准备好自己实施密码策略。它依赖于有效的机器密码策略,在生产环境中,管理员可能比用户更严格。
  2. 将基础结构的这一部分与 Windows 联系起来。
于 2012-05-31T12:35:55.223 回答