LDAP身份验证要求以及如何执行此操作

时间:2011-07-02 01:57:27

标签: java authentication ldap

我需要访问一个网站并通过它获取信息。我需要通过ldap身份验证,即为此。我只知道LDAP服务器的IP。我想通过JNDI这样做,但我仍然不知道如何获取服务器的参数进行身份验证。有人可以告诉我如何传递连接到此服务器的身份验证。

3 个答案:

答案 0 :(得分:1)

有一个相当含糊的问题,我只想指出Spring LDAP,它易于使用,并且在与LDAP和Java相关的所有事情上都有很好的文档。

答案 1 :(得分:0)

您无法“找到”它,也无法“获取”用于身份验证的服务器参数。你必须提前知道这一切。您可以为Web应用程序创建此东西配置参数。在Tomcat中,您可以在context.xml中定义LDAP资源,并通过LdapObectFactory支持它,如Tomcat资源文档中所述。

答案 2 :(得分:0)

您“需要”有关服务器(主机)IP或名称的信息以及您输入的目录的基本DN。您不会在任何地方找到它 - 这些将由您尝试连接的服务器指定。

这是您通常对ldap服务器进行身份验证的方式:

  1. 从用户处获取登录(或电子邮件)和密码。
  2. 匿名绑定到LDAP服务器(如果是,则使用服务帐户) 匿名绑定被禁用)
  3. 使用适当的过滤器搜索目录以识别 记录所提供的特定登录名。
  4. 如果只返回一个条目,那就是您想要的条目 - 获取条目的DN。 (如果为零或多个条目 返回,返回“没有这样的用户”)
  5. 使用在步骤4和中返回的DN重新绑定到LDAP目录 第1步中的密码
  6. 如果LDAP服务器允许绑定,则登录成功。 否则,请返回“无效密码”