Налаштування Mercurial за допомогою аутентифікації та авторизації Active Directory


19

Я оцінюю можливості переходу своєї організації до Mercurial, однак я спіткнувся на дві основні вимоги, на які я не можу знайти належних вказівників.

Як встановити центральний сховище Mercurial для аутентифікації користувачів з центральним каталогом Active Directory і дозволити їм натискати або витягувати, якщо вони мають потрібні облікові дані?

Як створити сховище проектів Mercurial, щоб дозволити користувачам, що відносяться до певної групи, лише натискати / витягувати вихідний код? Нам це потрібно, щоб мати дозвіл на проект.

На яких серверах HTTP (IIS або Apache тощо) підтримуються вищевказані дві вимоги?

Вибачте, якщо я прошу щось очевидне або якщо я пропускаю щось принципове щодо того, як працює автентифікація та авторизація.


Відповіді:


6

Я зробив чотири частини блогу для налаштування Mercurial на IIS з автентифікацією Active Directory та використанням hgwebdir.cgi для авторизації push. Він охоплює весь процес:

  • Налаштування веб-інтерфейсу hg Mercurial на IIS.
  • Налаштування аутентифікації IIS для Mercurial таким чином, щоб тільки користувачі, авторизовані активним каталогом (тобто групами / користувачами безпеки), могли переглядати / отримувати доступ до сховищ або через веб-інтерфейс hg, або через файлову систему.
  • Налаштування автентифікації Active Directory для користувачів Mercurial, тому лише авторизовані користувачі можуть бачити / отримувати доступ до сховищ, до яких вони мають доступ.
  • Налаштування hgwebdir.cgi через hgweb.config для встановлення авторизації push для вказаних користувачів у сховищах.
  • Приховування hgwebdir.cgi за допомогою переписання ISAPI Helicon у URL-адресі вашого сховища.
  • Настроювання стилю / відчуття веб-інтерфейсу hg для власного смаку.

http://www.endswithsaurus.com/2010/05/setting-up-and-configuring-mercurial-in.html

Я сподіваюся, що це стане в нагоді людям ...


4

Ви можете це зробити з 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.

Цього вам має вистачити.

Удачі,
Жоао Мігель Невес


Використання authnz_ldap передає незашифровані паролі між клієнтом та Apache. Я намагаюся з’ясувати, як цього уникнути, але не маючи великої долі.
LeBleu
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.