Configurando o Mercurial com autenticação e autorização do Active Directory

19

Estou avaliando as possibilidades de mudar minha organização para o Mercurial, mas estou tropeçando em dois requisitos básicos aos quais não posso encontrar indicadores adequados.

Como faço para configurar o repositório central do Mercurial para autenticar usuários com o Active Directory central e só permitir que eles façam push ou pull se tiverem as credenciais certas?

Como configuro um repositório de projetos do Mercurial para permitir que usuários pertencentes a um grupo específico enviem / recebam o código-fonte? Precisamos que isso tenha autorização por projeto.

Em quais servidores HTTP (IIS ou Apache, etc.) são os dois requisitos acima suportados?

Desculpas se eu estiver perguntando algo óbvio ou se estiver faltando algo fundamental sobre como a autenticação e a autenticação funcionam.

    
por Martin Geisler 26.04.2010 / 11:28

2 respostas

6

Eu fiz uma postagem em quatro partes para configurar o Mercurial no IIS com autenticação do Active Directory e usar o hgwebdir.cgi para autorização por push. Ele repassa todo o processo de:

  • Configurando a interface web hg do Mercurial no IIS.
  • Configurando a autenticação do IIS para o Mercurial para que somente os usuários autorizados pelo diretório ativo (por exemplo, grupos / usuários de segurança) possam visualizar / acessar os repositórios por meio da interface web hg ou do sistema de arquivos.
  • Configurando a autenticação do Active Directory para usuários do Mercurial, para que apenas usuários autorizados possam ver / acessar os repositórios aos quais eles têm acesso.
  • Configurando o hgwebdir.cgi via hgweb.config para definir a autorização de envio para usuários especificados para repositórios.
  • Ocultando o hgwebdir.cgi usando o ISAPI Rewrite da Helicon na URL do seu repositório.
  • Personalizando o estilo / a sensação da interface do usuário da web hg a seu gosto.

link

Espero que seja útil para as pessoas ...

    
por 17.05.2010 / 17:23
4

Você pode fazer isso com o Apache. Veja como restringir o envio no Apache em:

link

Veja acima no mesmo arquivo sobre como configurar o mercurial, suas permissões e todos os usuários permitidos pelo Apache.

Depois de configurar o mercurial e o Apache, você pode usar o mod_authnz_ldap para permitir apenas o acesso aos usuários do Active Directory:

link

Não se esqueça de verificar o parágrafo na configuração do Active Directory.

Isso deve ser o suficiente para você.

Boa sorte,
João Miguel Neves

    
por 27.04.2010 / 14:44