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.

Súvisiace články