Usando LDAP como método de autenticação para repositórios git

15

Eu quero convencer meu chefe de que devemos usar o git para controle de versão. Ele diz que é absolutamente necessário autenticar os usuários através do nosso servidor LDAP central.

Eu olhei para as várias soluções (gitweb, gitorious ...) e realmente não consegui encontrar uma resposta definitiva sobre se eles suportam a autenticação LDAP.

A única solução em que encontrei uma pequena informação foi uma configuração do Apache + mod_ldap. Mas isso significaria que o usuário autenticado no LDAP não seria necessariamente o mesmo que o usuário real do git, certo? (Não que isso seja um grande problema, mas apenas algo que me incomodaria).

Então, qual é a melhor maneira de autenticar usuários do git via LDAP?

    
por Leonard Ehrenfried 16.04.2010 / 15:39

2 respostas

8

Enquanto chaves são usadas para a maioria dos serviços públicos, a autenticação real acontece via ssh. O SSH é mais capaz de autenticar o ldap. No que diz respeito ao git, uma vez que você tenha acesso aos arquivos, você pode ir para a cidade.

UPDATE

O Git agora suporta (a partir deste ano, quem sabia?) um mecanismo de push http inteligente. A maneira antiga era usar um servidor webdav, mas tanto buscar quanto empurrar eram muito lentos e ineficientes. Agora você pode obter praticamente as mesmas velocidades sobre http como faria com ssh: // ou git: //. Isso significa que você pode usar o apache ou nginx e usar qualquer esquema de autenticação http que desejar. (Ldap, banco de dados, etc.)

Mais informações de pro git e github .

    
por 16.04.2010 / 15:50
2

Você pode procurar / desenvolver uma autenticação de backend do git usando scripts de ganchos git de pré-recepção. Eles não são necessariamente necessários para ser um script de shell.

Por exemplo, se você olhar para o gancho de pré-recebimento 'importante' , você verá a maneira de autenticar o cara que está tentando empurrar para o repositório remoto nessa situação usando um Script Ruby. Se você quiser e gastar um pouco do seu tempo, você pode fazer o mesmo usando sua linguagem favorita e sua biblioteca ldap: -)

    
por 06.02.2011 / 21:35

Tags