git - GitoLite 和 Git 可以使用 LDAP 而不是 SSH key 吗

标签 git ldap gitolite

我的公司正在考虑使用 git 和 gitolite,但不想使用 SSH key 并且喜欢使用 LDAP 工作。这可以做到吗??

我从来没有见过这样做的..我在每个地方都有这个设置,总是使用 SSH key

最佳答案

是的,你可以毫无问题地做到这一点。

您只需要您的 Apache to do the authentication part (因为 gitolite 只是一个 authorization layer ),并调用 gitolite-shell 而不是 git-http-backendREMOTE_USER 由 Apache 设置(和 used by gitolite-shell )。

请参阅“Git with Ldap on Ubuntu with Apache”中的详细示例。

httpd.conf 的主要部分是:

SetEnv GIT_PROJECT_ROOT @H@/repositories
SetEnv GIT_HTTP_EXPORT_ALL
SetEnv GITOLITE_HTTP_HOME @H@
ScriptAlias /hgit/ @H@/sbin/gitolite-shell/
SetEnv GIT_HTTP_BACKEND "@H@/usr/local/apps/git/libexec/git-core/git-http-backend"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
  SSLOptions +StdEnvVars
</FilesMatch>
<Location /hgit>
    SSLOptions +StdEnvVars
    Options ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch
    #AllowOverride All
    order allow,deny
    Allow from all
    AuthName "LDAP authentication for Smart HTTP Git repositories"
    AuthType Basic
    AuthBasicProvider myldap companyldap
    AuthzLDAPAuthoritative Off
    Require valid-user
    AddHandler cgi-script cgi
</Location>

(@H@只是一个模板值,需要替换成你的路径)

关于git - GitoLite 和 Git 可以使用 LDAP 而不是 SSH key 吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19383836/

相关文章:

git - git 可以忽略与模式匹配的特定行吗?

Git 内部 : how does Git store small differences between revisions?

git - 如何查看我的 github SSH key ?

ldap - Shibboleth SP 无法解析 Shibboleth IDP 发送的属性

gitolite - 没有gitolite的Gitlab V5的文件级访问权限

git - 在推送通知邮件中添加 git diff

python - 创建 virtualenv 后无法 git 添加 env/bin 目录

java - 如何匿名访问 Windows Active Directory?

使用 Ldap 进行 spring 授权和角色管理

Gitolite 权限仅对一个分支