Я успішно налаштував HAProxy перед сервером HTTP, над яким я не маю ніякого контролю .
Чи можна налаштувати HAProxy, щоб додати просту аутентифікацію HTTP на всі сайти, маючи на увазі, що я не можу налаштувати це на бекенді?
Спасибі,
Ларс
Я успішно налаштував HAProxy перед сервером HTTP, над яким я не маю ніякого контролю .
Чи можна налаштувати HAProxy, щоб додати просту аутентифікацію HTTP на всі сайти, маючи на увазі, що я не можу налаштувати це на бекенді?
Спасибі,
Ларс
Відповіді:
Мені довелося це робити сьогодні самостійно (адже 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 / backkend / прослуховування або до 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
частина необов’язкова.