Test proxy má nechať priame spojenie zlyhať
Oddeľte testovaciu sieť aplikácie od výstupu proxy, aby si nevšimnuté priame spojenie nemohlo spôsobiť, že test proxy bude vyzerať úspešne.
Lokálne proxy počúvajúce vedľa aplikácie neznovuvytvára sieť, ktorá vyžaduje prístup cez proxy. Aplikácia môže ignorovať nakonfigurované proxy, pripojiť sa priamo a napriek tomu hlásiť úspech.
Oddeľte sieť aplikácie od odchádzajúcej cesty proxy. Jedno usporiadanie založené na kontajneroch umiestňuje aplikáciu len do internej siete a proxy dáva druhú výstupnú sieť. V existujúcej definícii Compose môžu sieťové pripojenia vyzerať takto:
services:
app:
networks: [clients]
proxy:
networks: [clients, egress]
networks:
clients:
internal: true
egress: {}
Toto je sieťový fragment pre už definované služby. Nakonfigurujte schválené preposielajúce proxy a skutočného klienta aplikácie oddelene. Docker dokumentuje interné siete ako izolované zvonku; v tomto usporiadaní má dodatočnú vonkajšiu sieť iba proxy.
Zahrňte negatívny prípad bez používania proxy: externá požiadavka aplikácie má zlyhať. Pri HTTP proxy s overovaním má odmietnutý účet vyvolať svoju chybu overenia, kým prijatý účet má dosiahnuť cieľ so zodpovedajúcim pozorovaním proxy.
Testujte povolené a zamietnuté prípady proxy oddelene. Držte aplikáciu mimo iných externých sietí a nepridávajte režim hostiteľskej siete, ktorý proxy obchádza. Úspešná požiadavka je užitočným dôkazom iba vtedy, keď test sprístupňuje práve zamýšľanú trasu.