Я оцениваю возможности перевода моей организации на Mercurial, однако я натыкаюсь на два основных требования, на которые я не могу найти подходящих указателей.
Как мне настроить центральный репозиторий Mercurial для аутентификации пользователей с помощью центральной Active Directory и разрешить им отправлять или извлекать только если у них есть правильные учетные данные?
Как мне настроить репозиторий проекта Mercurial, чтобы разрешить пользователям, принадлежащим к определенной группе, отправлять / извлекать исходный код? Нам это нужно, чтобы иметь авторизацию для каждого проекта.
На каких HTTP-серверах (IIS или Apache и т. Д.) Поддерживаются два вышеуказанных требования?
Приносим извинения, если я спрашиваю что-то очевидное или мне не хватает чего-то фундаментального о том, как работают аутентификация и авторизация.
Я сделал сообщение в блоге из четырех частей, посвященное настройке Mercurial на IIS с аутентификацией Active Directory и использованием hgwebdir.cgi для push-авторизации. Он охватывает весь процесс:
http://www.endswithsaurus.com/2010/05/setting-up-and-configuring-mercurial-in.html
Надеюсь, людям это пригодится ...
Вы можете сделать это с помощью Apache. Узнайте, как ограничить отправку в Apache по адресу:
http://mercurial.selenic.com/wiki/PublishingRepositories#pushing
Выше в том же файле описано, как настроить mercurial, его разрешения и всех пользователей, которым разрешен Apache.
После установки Mercurial и Apache вы можете использовать mod_authnz_ldap, чтобы разрешить доступ только пользователям Active Directory:
http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html
Не забудьте проверить параграф о конфигурации Active Directory.
Тебе должно хватить.
Удачи,
Жуан Мигель Невеш