Я успешно настроил HAProxy перед сервером HTTP, который я не могу контролировать .
Можно ли настроить HAProxy для добавления простой HTTP-аутентификации на все сайты, учитывая, что я не могу настроить это на бэкэнде?
Благодарность,
Lars
Я успешно настроил HAProxy перед сервером HTTP, который я не могу контролировать .
Можно ли настроить HAProxy для добавления простой HTTP-аутентификации на все сайты, учитывая, что я не могу настроить это на бэкэнде?
Благодарность,
Lars
Ответы:
Я должен был сделать это сегодня сам (потому что IIS 7.5 причудливо не поддерживает аутентификацию против чего-либо, кроме учетных записей пользователей Windows или AD!) ...
Вот весь код
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
Я задокументировал это немного лучше здесь: http://nbevans.wordpress.com/2011/03/03/cultural-learnings-of-ha-proxy-for-make-benefit/
Я думаю, что это действительно возможно, но сейчас я могу только найти пример, чтобы получить вас на полпути ...
http://haproxy.1wt.eu/download/1.4/doc/configuration.txt - ваша библия.
Ознакомьтесь с разделом 3.4 (Списки пользователей)
Это начинается:
Можно управлять доступом к разделам frontend / backend / listen или http-статистике, разрешая только аутентифицированным и авторизованным пользователям. Для этого необходимо создать хотя бы один список пользователей и определить пользователей.
В этом разделе объясняется, как настроить список пользователей. Пример в этом разделе довольно исчерпывающий, поэтому скопируйте его, если нужно.
Далее нужно выяснить, как его применить ... Я думаю, что ответ лежит в разделе 7.5.3 (Соответствие на уровне 7)
Я думаю, что это может быть так же просто, как использовать следующее в 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.
Опять же, я не проверял это, но это то, что я прочитал документацию, поскольку предположения возможны.
Надеюсь, этого достаточно, чтобы вы начали?
Если вы хотите сделать это в целях аутентификации
option httpchk
config, это более простое решение работает: /programming/13325882/haproxy-solr-healthcheck-with-authentication
frontend
определении, а неbackend
если хотите. Иrealm xxxx
часть необязательна.