Упълномощаване на преден прокси в Apache: Require и AuthMerging
Проследете глобалното и виртуалното прокси упълномощаване чрез правилата за сливане на секции в Apache, вместо да третирате proxy.conf като отделен слой на политиката.
Правилото в proxy.conf не е специален клас правило. Apache прочита включената конфигурация в дървото си на конфигурацията; обхващащата глобална секция, VirtualHost или съответстващата секция определя как директивата участва.
Започнете със слушателя и виртуалния хост, обслужващи заявката за преден прокси. След това съберете съответстващите Proxy секции от този контекст и от главната конфигурация. Редът на обработка на секциите е важен, а не само кой файл е редактиран последен.
Упълномощаването не винаги е кумулативно
При поведението по подразбиране AuthMerging Off упълномощаването се наследява, докато по-късна приложима секция предостави своята логика за упълномощаване. Тази нова логика може да замени предходните изисквания, вместо да добави още едно ограничение.
| Настройка | Комбинация с най-близката предходна секция за упълномощаване |
|---|---|
| Off | Новото упълномощаване може да отмени наследената логика |
| And | И двата набора трябва да разрешат |
| Or | Всеки от наборите може да разреши |
Самият AuthMerging е локален за секцията, която го съдържа. Не приемайте, че еднократното задаване на And променя всяка следваща секция.
Поддържайте желаната политика явна, където е възможно. Два реда Require без обхващащ контейнер за упълномощаване са неявно алтернативи, така че правило за IP плюс valid-user не е автоматично „IP и потребител“. Използвайте RequireAll, когато двете условия принадлежат на едно решение.
Прегледайте пълната съответстваща конфигурация, преди да промените прокси акаунт или да отворите достъп. След това тествайте разрешените и отказаните случаи срещу работещия слушател. Заявка може да бъде отхвърлена—или неочаквано разрешена—защото друга секция е предоставила ефективното упълномощаване.