3

我们希望在公司中托管我们自己的存储库。我们需要 LDAP 支持,尤其是组。所以我希望 A 组的用户不能访问 B 组的项目。如果不允许,甚至不能阅读它。

我也不想使用https。所以最好的是,如果用户登录网页(LDAP 登录)并上传他的 SSH 密钥。之后,他应该只能看到他的 LDAP 组或他所在的所有组的项目/存储库。

谢谢您的帮助!约尔格

4

2 回答 2

1

找到了一个有用的解决方案。我使用Gitolite并编写了自己的脚本。Gitolite 允许您使用脚本向 LDAP/AD 询问组。通过这个网站,您可以创建自己的 SSH-Key 表单。要浏览存储库,您可以使用带有 gitolite 的 gitweb!除了 SSH-Key-Form 之外,我得到的一切都已启动并运行。

于 2011-11-09T15:44:31.807 回答
0

您可以使用 Gitolite 之类的授权层,然后可以通过LDAP 脚本获取组信息。 访问 Gitolite 管理的存储库的本地方式仍然是 SSH。

大型站点通常具有已包含用户和组信息(包括组成员身份详细信息)的 LDAP 服务器。
这样的网站可能更喜欢 gitolite 只获取该信息,而不是必须将其冗余地放入 gitolite 的配置文件中。

您只需要一个脚本,给定用户名,查询您的 LDAP 或类似服务器,并返回她所属的所有组的空格分隔列表。
如果发送了无效的用户名,或者用户有效但不属于任何组,则不应打印任何内容。

于 2011-10-26T10:39:16.353 回答