2010-01-12 182 views
5

我发现你的文章使用Apache Auth与gitweb,gitosis。用Gitosis验证Gitweb没有LDAP验证?

我想知道是否有办法做到这一点,如果我没有使用LDAP进行身份验证。我们目前有一个非常大的NIS域,我们用它来在所有unix服务器上进行身份验证。 我们通过UI使用这个为SVN仓库,但这种情况下,我想满足的要求:

  • Git仓库
  • 访问控制 - 使用Gitolite
  • 在线UI - 使用的GitWeb
  • UI还必须有访问控制 - 尚未实现

我想首先我需要得到的GitWeb和Gitolite一起玩,此刻每一个单独的作品。

如果gitolite使用SSH密钥提供了访问,那么它可以通过具有用于每个机器用户/开发者将从被访问的GitWeb/gitolite密钥提供接入这种方式。

或者,如果我能得到的GitWeb简单地从NIS域认证用户,因为每个用户都有我们的IT部门设置,这将是更好的帐户。

任何想法或howtos我可以用来进一步满足这一要求?

回答

4

你链接的GitWeb和Gitosis的一起的方法是:

 
    use lib ("."); 
    require "gitweb.conf"; 
  • 使用您的Apache2 httpd.conf一个NIS authentication(或extra/httpd-ssl.conf如果您正在使用HTTPS)

一旦用户通过验证后(无论是基本的,LDAP或NIS AUTH),该$cgi->remote_user将设置和是通过(通过gitolite gitweb.conf)传递给管理Git访问权限(ACL)的gitolite perl脚本的登录名。

Git的ACL是仍然SSH密钥管理和独立于登录机制,除了登录一部分使gitolite做出正确的帐户关联。