Je joue avec Mercurial 1.6 sous Apache 2.2.15 sur une machine Windows sous un domaine Windows, fonctionnant comme un serveur repo central sur lequel des personnes sélectionnées auront des autorisations de validation. J'essaie de restreindre l'accès à Mercurial en restreignant l'accès à Apache/cgi-bin/pour sélectionner les utilisateurs via sspi_auth_module.Mercurial, Apache, Windows, mod_auth_sspi et hg push
Si je navigue vers la page de dépôt avec sspi_auth_module appliquant des restrictions sur/cgi-bin/je suis invité à entrer un nom d'utilisateur et un mot de passe, ce qui est accepté et tout fonctionne correctement.
Si je tente d'utiliser la CLI « push hg » pour commettre de mon repo local au serveur, à partir de la ligne de commande, la commande se termine très rapidement avec le message:
abort: authorization failed
Si je retire/cgi-bin/restrictions, en poussant des travaux.
La section pertinente du httpd.conf: (noms expurgés)
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
AuthName "XXXXXX"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIOmitDomain On
Require user "xxxxxx"
</Directory>
La section pertinente de mon fichier hgweb.config (référentiels stockés dans C:/Hg)
[collections]
C:/Hg = C:/Hg
[web]
allow_push = *
push_ssl = false
allow_archive = bz2 gz zip
Je J'aime laisser le contrôleur de domaine s'inquiéter de l'authentification (pour moi, il vaut mieux que tout le monde mémorise des mots de passe supplémentaires!) - est-ce une approche viable?