我的 LDAP 用户未显示在 Subversion Edge 的 Web 控制台中。如果他们未显示,我该如何将他们添加到现有角色中?
答案1
事实证明,仅通过 SVN 连接不足以创建用户帐户。相反,您需要登录网络控制台作为 LDAP 用户。首次登录后,LDAP 用户将显示在管理工具的其他位置,并可以添加到组中。
出于好奇,这是我的 LDAP 配置:
显然,您需要使用自己的信息更新“mydomain”和“domainuser”。
答案2
注意:自 Subversion Edge 1.3 起,用户可以使用其 LDAP 凭据登录 Subversion 服务器以及控制台。首次登录控制台时,LDAP 用户将创建为具有 ROLE_USER 权限的控制台用户。此用户无法编辑,但 Subversion Edge 管理员可以通过“编辑角色”屏幕分配其他角色,以允许用户使用 LDAP 凭据管理服务器。
答案3
我必须自己使用 CollabNet Edge 2.2.0 解决这个问题,并想分享对我有用的方法。我正在运行 RHEL 6 并尝试连接到 Windows AD 服务器,但什么都无法正常工作。
首先,请帮自己一个忙,启用 DEBUG 日志记录,以便您可以将错误消息发送到 Google。登录 CollabNet Edge Web 控制台:https://服务器名称:4434/csvn。然后导航至管理->服务器日志->配置。将名为“Subversion 服务器日志级别:”的字段更改为“DEBUG”,这将为您提供 apache 的 DEBUG 日志记录,apache 是实际执行 LDAP 查询的服务。现在您可以转到旁边的“可用文件”选项卡并选择最新的 error_[DATE].log 文件来查看 apache 遇到的错误。
现在,使用 Edge 2.2.0,用户无需登录 Web 控制台即可创建用户帐户(尽管他们可以这样做)。或者,只需尝试使用 Windows 用户名和密码签出存储库即可。我猜它不会立即起作用,但它会在您的日志中生成一条不错的错误消息。当我调试问题时,我看到了如下错误消息:
- auth_ldap 身份验证:用户 XXXXX 身份验证失败;URI /viewvc/[LDAP:ldap_simple_bind_s() 失败][无法联系 LDAP 服务器]
- auth_ldap 身份验证:用户 XXXXX 身份验证失败;URI / [LDAP:ldap_simple_bind_s() 失败][凭据无效]
- auth_ldap 身份验证:用户 XXXXX 身份验证失败;URI / [用户的 ldap_search_ext_s() 失败][操作错误]
现在你可以开始用谷歌搜索,或者直接继续阅读。我的重大突破是找到Michele 的博客。它建议将“REFERRALS off”行添加到您的 /etc/ldap/ldap.conf 文件(或者在 RHEL 的情况下为 /etc/openldap/ldap.conf)。这对我来说不起作用,但其中一个评论确实如此。它建议使用 OU 进一步缩小“LDAP 基本 DN”字段。我照做了,然后再次尝试检查,结果一切都成功了 :)
仅供参考这是我在“管理”->“服务器设置”->“身份验证”选项卡上的配置
我希望这可以为某些人节省一些时间(我浪费了半天时间)。