Autorizacija prosleđujućeg proxyja u Apacheu: Require i AuthMerging
Pratite globalnu autorizaciju proxyja i onu na virtualnom hostu kroz Apacheova pravila spajanja sekcija, umesto da proxy.conf tretirate kao zaseban sloj politike.
Pravilo u proxy.conf nije posebna klasa pravila. Apache učitava uključenu konfiguraciju u svoje konfiguracijsko drvo; obuhvatajuća globalna, VirtualHost ili odgovarajuća sekcija određuje kako direktiva učestvuje.
Počnite sa listenerom i virtualnim hostom koji opslužuju zahtev prosleđujućeg proxyja. Zatim prikupite odgovarajuće Proxy sekcije iz tog konteksta i glavne konfiguracije. Redosled obrade sekcija je važan, a ne samo to koji je fajl poslednji uređen.
Autorizacija nije uvek kumulativna
Uz podrazumevano ponašanje AuthMerging Off, autorizacija se nasleđuje dok kasnija primenjiva sekcija ne pruži sopstvenu logiku autorizacije. Ta nova logika može zameniti prethodne zahteve umesto da doda još jedno ograničenje.
| Postavka | Kombinacija sa najbližom prethodnom sekcijom autorizacije |
|---|---|
| Off | Nova autorizacija može nadjačati nasleđenu logiku |
| And | Oba skupa moraju autorizovati |
| Or | Bilo koji skup može autorizovati |
Sam AuthMerging je lokalan za sekciju koja ga sadrži. Ne pretpostavljajte da jedno postavljanje And menja svaku kasniju sekciju.
Držite nameravanu politiku eksplicitnom gde je moguće. Dve linije Require bez obuhvatajućeg spremnika autorizacije implicitno su alternative, pa IP pravilo plus valid-user nije automatski „IP i korisnik“. Koristite RequireAll kada oba uslova pripadaju istoj odluci.
Pregledajte kompletnu odgovarajuću konfiguraciju pre nego što promenite proxy nalog ili otvorite pristup. Zatim testirajte dozvoljene i odbijene slučajeve na aktivnom listeneru. Zahtev može biti odbijen—ili neočekivano dozvoljen—jer je druga sekcija pružila efektivnu autorizaciju.