V terminológii HTTP pôsobí ako origin server na spojení smerujúcom ku klientovi, pričom žiadosť prekladá pre vstupné doručenie. Klienti normálne adresujú reverzný proxy namiesto jeho výberu ako všeobecného relay.
Reverzné proxy bežne vykonávajú termináciu TLS, smerovanie žiadostí, distribúciu záťaže, cachovanie, integráciu autentifikácie, rate limiting a riadené publikovanie interných služieb. Správny návrh tiež obmedzuje priamy backend prístup a definuje, ktorým hlavičkám pridávaným proxy môže aplikácia dôverovať. Verejný názov proxy, certifikáty, health checks a správanie pri zlyhaní sa stávajú súčasťou architektúry služby.
Kľúčové body
Smerovanie a izoláciaSmerovať len očakávané hostiteľov, cesty, metódy a protokoly. Umiestniť backendy na riadené siete a zabrániť internetovým klientom obísť proxy a dosiahnuť origin priamo.
Identita a metadátaOdstrániť nedôveryhodné forwarding hlavičky pred pridaním autoritatívnych hodnôt. Aplikácie im majú dôverovať len z určených proxy adries a majú zachovať auditovateľnú atribúciu klienta.
Dostupnosť a súkromiePoužiť ohraničené časové limity, limity veľkosti žiadostí, health checks, kapacitné kontroly a odolné inštancie. Minimalizovať logy a chrániť session tokeny, autorizačné hlavičky a dešifrovaný obsah.
Dôležité obmedzenieReverzný proxy nerobí aplikáciu automaticky bezpečnou a nie je synonymom firewallu webových aplikácií. Nebezpečná aplikačná logika, permisívne trasy, obchádzka originu, zmätok v hlavičkách alebo kompromitácia proxy môžu službu stále odhaliť. Terminácia TLS tiež necháva proxy zaobchádzať s plaintextom a môže vyžadovať chránené re-šifrovanie k backendom.