Autoryzacja proxy przekazującego w Apache: Require i AuthMerging
Śledź autoryzację proxy globalnego i hosta wirtualnego przez reguły łączenia sekcji Apache, zamiast traktować proxy.conf jako osobną warstwę polityki.
Reguła w proxy.conf nie jest specjalną klasą reguł. Apache wczytuje dołączoną konfigurację do swojego drzewa konfiguracji; otaczająca sekcja globalna, VirtualHost lub pasująca sekcja decyduje, jak dyrektywa uczestniczy.
Zacznij od listenera i hosta wirtualnego obsługujących żądanie proxy przekazującego. Następnie zbierz pasujące sekcje Proxy z tego kontekstu i konfiguracji głównej. Liczy się kolejność przetwarzania sekcji, a nie tylko to, który plik edytowano ostatnio.
Autoryzacja nie zawsze jest kumulatywna
Przy domyślnym zachowaniu AuthMerging Off autoryzacja jest dziedziczona, dopóki późniejsza mająca zastosowanie sekcja nie dostarczy własnej logiki autoryzacji. Ta nowa logika może zastąpić wcześniejsze wymagania, a nie dodać kolejne ograniczenie.
| Ustawienie | Połączenie z najbliższą poprzednią sekcją autoryzacji |
|---|---|
| Off | Nowa autoryzacja może nadpisać odziedziczoną logikę |
| And | Oba zbiory muszą autoryzować |
| Or | Każdy ze zbiorów może autoryzować |
Sam AuthMerging jest lokalny dla sekcji, która go zawiera. Nie zakładaj, że jednorazowe ustawienie And zmieni każdą późniejszą sekcję.
Tam, gdzie to możliwe, utrzymuj zamierzoną politykę jawnie. Dwie linie Require bez otaczającego kontenera autoryzacji są domyślnie alternatywami, więc reguła IP plus valid-user nie oznacza automatycznie „IP i użytkownik”. Użyj RequireAll, gdy oba warunki należą do tej samej decyzji.
Przejrzyj pełną pasującą konfigurację, zanim zmienisz konto proxy lub otworzysz dostęp. Następnie przetestuj przypadki dozwolone i odrzucone na działającym listenerze. Żądanie może zostać odrzucone—lub nieoczekiwanie dozwolone—ponieważ inna sekcja dostarczyła skuteczną autoryzację.