0

我尝试使用 Ldap 配置 Gitblit 进行身份验证。我面临的唯一问题是当我在 gitblit.properties 中输入管理员凭据时,所有用户都针对 Ldap 进行了身份验证。但是,当我配置特定用户的凭据时,只有该用户经过身份验证,其余显示无效。那么,是否总是需要在 gitblit.properties 文件中配置管理员凭据,因为我们的 ldap 管理员不会与我们共享管理员的凭据。

4

1 回答 1

0

答案是“视情况而定”。

但它并不需要太多的“管理员凭据”。realm.ldap.username和设置需要使用对用户条目具有读取权限的realm.ldap.passwordLDAP 凭据进行配置(如果您想从 LDAP 检索组,则需要使用组,即realm.ldap.maintainTeamsis true)。因此,“管理”部分只能读取realm.ldap.accountBase(和realm.ldap.groupBase,如果需要)下的所有条目,不包括用户密码。

如果您想将用户(和组)从 LDAP 同步到 Gitblit,则需要这样的帐户,即您需要如上所述设置realm.ldap.username和使用凭据。realm.ldap.password

如果您只想对用户进行身份验证,那么您也可以设置该realm.ldap.bindpattern设置。这将直接与用户条目绑定,而无需先搜索帐户。但是,它要求登录的用户对 LDAP 中的组条目具有读取权限,以防您从 LDAP 获取团队。
由于当前(1.8.0)Gitblit 中的一个错误,realm.ldap.username仍然用于至少绑定一次针对 LDAP。这意味着您要么将其留空并且您的 LDAP 允许匿名绑定,要么将其设置为某些 LDAP 凭据以便绑定工作。在这种情况下,用于的凭据realm.ldap.username不需要对所有用户或组条目具有读取权限。这应该在下一个 Gitblit 版本中修复。

于 2016-12-30T19:24:51.380 回答