在没有LDAP身份验证的情况下使用Gitosis验证Gitweb?

时间:2010-01-12 21:38:57

标签: http-authentication gitosis gitweb gitolite nis

我发现你的文章使用Apache Auth和gitweb,gitosis。

如果我没有使用LDAP进行身份验证,我想知道是否有办法执行此操作。我们目前有一个非常大的NIS域,我们用它来在所有unix服务器上进行身份验证。 我们通过UI将其用于SVN存储库,但在这种情况下,我试图满足以下要求:

  • Git Repositories
  • 访问受控 - 使用Gitolite
  • 在线用户界面 - 使用Gitweb
  • UI还必须具有访问控制 - 尚未实现

我首先想到的是我需要让Gitweb和Gitolite一起玩,每个人现在都可以单独工作。

如果gitolite使用SSH密钥提供访问权限,那么它可以通过为用户/开发人员访问Gitweb / gitolite的每台机器提供密钥来提供访问权限。

或者,如果我可以让gitweb简单地从NIS域验证用户,因为每个用户都有一个我们的IT部门设置的帐户,这样会更好。

我可以用任何想法或方法来进一步了解这一要求吗?

1 个答案:

答案 0 :(得分:4)

将gitweb和gitosis连接在一起的方式是:

    use lib (".");
    require "gitweb.conf";
  • 为您的Apache2 httpd.conf使用NIS authentication(如果您使用https,则使用extra/httpd-ssl.conf

一旦用户通过身份验证(使用基本,LDAP或NIS身份验证),将设置 $cgi->remote_user ,即将通过的登录(由gitolite gitweb提供) .conf)到gitolite perl脚本管理Git访问权限(ACL)。

Git ACL仍由ssh密钥管理,独立于登录机制,但登录部分除外,它使gitolite能够建立正确的帐户关联。