LDAP服务器是我的基础dn

inv*_*er7 19 authentication ldap openca

您好我正在尝试使用我的ldap测试服务器来验证openca中的用户.

我目前通过phpldapadmin连接:

登录DN:cn = admin,dc = example,dc = com
密码:mypass

但在openca上出现问题...在datasources.xml中我找到了ldap配置的设置并要求

<name>basedn</name>
Run Code Online (Sandbox Code Playgroud)

哪个是我的基础?我已经试过了

cn=admin,dc=example,dc=com
Run Code Online (Sandbox Code Playgroud)

dc=example,dc=com
Run Code Online (Sandbox Code Playgroud)

我也可以使用LDAP Admin explorer连接到我的ldap.

谢谢 !

ixe*_*013 26

基数dn是dc=example,dc=com.

我不知道openca,但我会尝试这个答案,因为你到目前为止流量很少.

基数dn是服务器搜索用户的点.所以我会尝试简单地admin用作登录名.

如果openca的行为与大多数ldap感知应用程序一样,那么将会发生这种情况:

  1. 用户的ldap搜索admin将由服务器从基数dn(dc=example,dc=com)开始.
  2. 找到用户后,将使用完整的dn(cn=admin,dc=example,dc=com)与提供的密码绑定.
  3. ldap服务器将散列密码并与存储的散列值进行比较.如果它匹配,你就在.

让步骤1正确是最困难的部分,但主要是因为我们不经常这样做.您需要在configuraiton文件中注意的事项是:

  • dn应用程序将使用绑定到LDAP服务器.这在应用程序启动时发生,在任何用户进行身份验证之前.你将不得不提供一个完整的dn,也许是类似的东西cn=admin,dc=example,dc=com.
  • 身份验证方法.它通常是"简单绑定".
  • 用户搜索过滤器.查看objectClass为您的admin用户命名的属性.它将是inetOrgPersonuser.会有其他人喜欢top,你可以忽略它们.在你的openca配置中,应该有一个字符串(objectClass=inetOrgPerson).无论是什么,请确保它与您的管理员用户的对象类匹配.您可以使用此搜索过滤器指定两个对象类(|(objectClass=inetOrgPerson)(objectClass=user)).

下载LDAP浏览器,例如Apache的Directory Studio.使用您的应用程序凭据进行连接,这样您就可以看到应用程序看到的内容.