Mercurial (hg) com diretório ativo

15

Posso configurar o Mercurial para autenticar usuários no Active Directory? No meu caso, o hg pode rodar no Windows, Linux ou FreeBSD, mas eu preciso usar usuários do AD.

Nota: se for possível, por favor me aponte para um tutorial.

    
por Zote 11.11.2009 / 19:47

5 respostas

11

Bem, comecei com o tutorial .

Depois de terminar, fiz as seguintes alterações adicionais no servidor (Windows 2008):

  • IIS configurado para usar SSL;
  • Autenticação anônima desativada para o site;
  • Ativado Autenticação básica e do Windows para o site;
  • Permissões NTFS configuradas na pasta do repositório.

Também é necessário adicionar as seguintes linhas ao arquivo .hg\hgrc do seu repositório:

No lado do cliente, tive que especificar explicitamente o nome de usuário e a senha.

[web]
allow_push = *
    
por 26.02.2010 / 17:27
5

Se você estiver procurando por algum sistema integrado que possa trabalhar no Windows, unix e autenticar no AD / LDAP, experimente o link do RhodeCode. da instância local do bitbucket / github que serve repositórios. Ele vem com sistema de permissão e fácil gerenciamento de usuários, revisão de código, etc.

    
por 24.12.2011 / 18:25
4

Eu escrevi um post em 4 partes há alguns meses que permite que você use o Active Directory / IIS para hospedar o servidor web do Mercurial. Funciona um prazer:

link

Ele orienta você:

  • Configuração do Mercurial no IIS
  • Configurando as extensões ISAPI para o Python
  • Reescrita a ISAPI para ocultar URLs desagradáveis
  • Configuração de privilégios de segurança usando o Active Directory
  • Personalização da interface da web
por 23.07.2010 / 19:57
3

Ben já lhe deu um bom guia para configurar o Mercurial no IIS com o AD.

Gostaria apenas de acrescentar que a principal coisa que você precisa saber é que o script CGI (Fast) embutido no Mercurial não autentica os usuários . O script CGI que fornecemos depende de um servidor web front-end para fazer a autenticação. Então você deve configurar o Apache, IIS, nginx, ... para fazer a autenticação antes , eles invocam o script. (No entanto, você pode usar o excelente RhodeCode se quiser um sistema semelhante ao Bitbucket com suporte a LDAP que também possa ser conectado ao AD).

Essa separação de interesses torna o Mercurial muito flexível: se você quiser a autenticação do Active Directory, basta usar o plug-in padrão do seu servidor da Web para fazer isso. Muitos sites já terão essa configuração e assim o Mercurial "apenas funcionará": -)

Portanto, o Mercurial nunca verifica senhas - a parte de autenticação. Mas ele pode fazer autorização , o que significa que pode permitir ou proibir usuários de empurrar ou puxar, etc. Isso é feito com base no nome de usuário armazenado no variável CGI padrão REMOTE_USER . Cabe ao servidor web definir essa variável depois de autenticar o usuário remoto.

No Mercurial, o nome de usuário é comparado com as listas allow_push e allow_read na seção [web] para determinar se o usuário pode enviar ou copiar / clonar o repositório em questão. Isso pode ser configurado em uma base por repositório, editando os arquivos .hg\hgrc em cada repositório.

    
por 22.12.2011 / 21:40
0

Desculpe o meu necroposting, mas acabei de lançar uma versão alpha do HgLab , que é um servidor Mercurial para Windows e suporta o Active Directory autenticação fora da caixa.

    
por 07.11.2012 / 11:55