【问题标题】:Light weight Java API for LDAP用于 LDAP 的轻量级 Java API
【发布时间】:2012-08-09 15:24:06
【问题描述】:

我想使用 LDAP(Iplanet 或 Open DS)为我的新开源 Java 项目验证用户名和密码,尽管针对数据库进行了验证。

我想做的主要活动是: 1)验证用户名和密码 2) 将用户或组添加到目录服务器 3) 将用户分配到组。

任何提供快速学习曲线的轻量级 Java API。

【问题讨论】:

  • 我不知道你叫什么轻量级,但Spring LDAP 可以胜任这项工作。

标签: java active-directory ldap jndi


【解决方案1】:

我对@9​​87654321@ 有很好的体验。它只是一个 jar,有很好的文档,非常用户友好的 API,与 JNDI 相比,a lot of advantages

我特别喜欢它的 ORM 框架,它可以轻松地将 LDAP 记录映射到 Java 对象。

【讨论】:

    【解决方案2】:

    我的第一选择是UnboundID LDAP SDK。出于各种原因,不应将 JNDI 用于新代码:

    • JNDI 使用的 LDAP 模型不干净,也不清楚
    • JNDI 中存在许多软件缺陷,以及一些使某些 LDAP 操作无法进行的构造
    • 从 LDAP 标准的角度来看,JNDI 并不完全兼容
    • JNDI 使用断开连接的配置架构,这使得 JNDI 难以使用

    UnboundID LDAP SDK

    • 比 JNDI 更干净
    • 比JNDI更清晰
    • 支持故障转移和负载平衡
    • 支持本地化
    • 使语法和匹配规则的使用变得容易
    • 学习曲线更短,比 JNDI 更易于使用
    • 支持异步操作
    • 支持内存目录服务器,可用于单元测试

    另见

    【讨论】:

      【解决方案3】:

      您可以使用 JNDI 完成所有这些工作:

      http://www.oracle.com/technetwork/java/jndi/index.html

      如果您使用教程页面,您将看到您想要做的每件事的示例: http://docs.oracle.com/javase/jndi/tutorial/

      有一个框架让它变得更容易:
      http://today.java.net/pub/a/today/2006/04/18/ldaptemplate-java-ldap-made-simple.html

      但我真的不推荐它,如果您正在执行大量 JNDI 项目,这确实是一种管理开销的方法,而不是让单个项目更容易的方法。做 JNDI 的开销只是一次性的事情,一旦你设置了它,你就不必再碰它了。如果您有任何问题,请在此处发布,我们会解决的。 :)

      -t.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-23
        • 2010-09-18
        • 2010-10-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多