是否可以在不使用每人SSH证书的情​​况下为GIT设置Gerrit

时间:2014-02-25 15:22:46

标签: git ssh ldap gerrit

我正在尝试为我的团队设置GIT + GERRIT基础设施。我们是大公司的一部分。公司有程序和做法。

到目前为止,我们一直在使用SVN,它允许进行LDAP身份验证。我们基本上能够使用用户名和密码进行提交。

现在,我一直在使用GIT配置奋斗了好几天。我知道从理论上讲,可以将GIT配置为使用这些用户名/密码对而不是SSH证书。

但是,我对代码审查和GERRIT非常肯定。现在,当我开始阅读时,似乎如果您没有为其配置SSH密钥,则无法在GERRIT中配置帐户。在我看来,这似乎是双重身份验证,因为我们已经通过https公开Gerrit并拥有控制访问权限的凭据。此外,我认为我没有影响力使管理员:

  • 通过LDAP提供每个帐户的SSH密钥
  • 为每个Gerrit实例配置密钥(因为我们有许多我们要迁移的存储库)

目前,如果我找不到解决办法,那么我对GIT迁移的追求就会失败。有没有办法配置GIT与gerrit一起工作而不提供每人SSH证书?我仍然需要能够将重要LDAP目录中的所有用户区分为提交者。

1 个答案:

答案 0 :(得分:1)

  

有没有办法配置GIT以使用gerrit而不提供每人SSH证书?

是。 Gerrit通过ssh或https支持加密的git通信。 ssh需要密钥,https使用用户名/(Gerrit生成的)密码。如果您不想使用密钥,可以禁用ssh - 这就是Google为其Gerrit服务器所做的工作(请参阅https://android-review.googlesource.com/

  

此外,我认为我无法影响管理员:

     
      
  • 通过LDAP提供每个帐户的SSH密钥
  •   
  • 为每个Gerrit实例配置密钥(因为我们有许多我们要迁移的存储库)
  •   

幸运的是,您不需要使用Gerrit执行此操作。 Gerrit使用内置的ssh服务器,它不使用服务器的标准ssh服务器。用户在本地创建自己的ssh密钥,并通过Web界面将它们上传到Gerrit。您无需管理员提供或配置密钥。