不知道 LDAP 管理员的凭据。我该如何配置 gitblit.properties

Don't know LDAP admins' credentials. How can I configure gitblit.properties

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

答案是"it depends"。

但并不需要那么多 "admin credentials"。 realm.ldap.usernamerealm.ldap.password 设置需要使用 LDAP 凭据进行配置,这些凭据可以读取用户条目(以及组,如果你想从 LDAP 检索组,即 realm.ldap.maintainTeamstrue).因此 "administrative" 部分只能读取 realm.ldap.accountBase(和 realm.ldap.groupBase,如果需要)下的所有条目,不包括用户密码。

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

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