J'ai réussi à installer HAProxy devant un serveur HTTP sur lequel je n'ai aucun contrôle .
Est-il possible de configurer HAProxy pour ajouter Authentification HTTP simple à tous les sites, sachant que je ne peux pas configurer cela sur le backend?
Merci,
Lars
J'ai dû le faire moi-même aujourd'hui (parce que IIS 7.5 ne supporte bizarrement pas l'authentification contre autre chose que les comptes d'utilisateurs Windows ou AD!) ...
Voici tout le code
userlist UsersFor_AcmeCorp
user joebloggs insecure-password letmein
backend HttpServers
.. normal backend stuff goes here as usual ..
acl AuthOkay_AcmeCorp http_auth(UsersFor_AcmeCorp)
http-request auth realm AcmeCorp if !AuthOkay_AcmeCorp
Je l'ai documenté un peu mieux ici: http://nbevans.wordpress.com/2011/03/03/cultural-learnings-of-ha-proxy-for-make-benefit/
Je pense que c'est réellement possible, mais pour le moment je ne trouve qu'un exemple pour vous aider à mi-chemin ...
http://haproxy.1wt.eu/download/1.4/doc/configuration.txt est votre bible.
Consultez la section 3.4 (Listes d'utilisateurs)
Il commence:
Il est possible de contrôler l'accès aux sections frontend/backend/listen ou aux statistiques http en n'autorisant que les utilisateurs authentifiés et autorisés. Pour ce faire, il est nécessaire de créer au moins une liste d'utilisateurs et de définir des utilisateurs.
Cette section explique comment configurer une liste d'utilisateurs. L'exemple de cette section est assez exhaustif, alors copiez-le si vous en avez besoin.
Ensuite, il faut trouver comment l'appliquer ... Je pense que la réponse se trouve dans la section 7.5.3 (Correspondance au niveau 7)
Je pense que cela pourrait être aussi simple que d'utiliser ce qui suit dans un acl:
http_auth(userlist)
http_auth_group(userlist) <group> [<group>]*
Returns true when authentication data received from the client matches
username & password stored on the userlist. It is also possible to
use http_auth_group to check if the user is assigned to at least one
of specified groups.
Encore une fois, je ne l'ai pas testé, mais c'est ce que j'ai lu la documentation comme suggérant que c'est possible.
J'espère que c'est suffisant pour vous lancer?
Si vous cherchez à le faire dans le but d'authentifier un
option httpchk
config, cette solution plus simple fonctionne: https://stackoverflow.com/questions/13325882/haproxy-solr-healthcheck-with-authentication