Lokalni proxy koji sluša uz aplikaciju ne reproducira mrežu koja zahtijeva pristup preko proxyja. Aplikacija može zanemariti konfigurirani proxy, spojiti se izravno i ipak prijaviti uspjeh.

Odvojite mrežu aplikacije od izlaznog puta proxyja. Jedan raspored zasnovan na kontejnerima stavlja aplikaciju samo na internu mrežu, a proxyju daje drugu izlaznu mrežu. U postojećoj Compose definiciji mrežni priključci mogu izgledati ovako:

services:
  app:
    networks: [clients]
  proxy:
    networks: [clients, egress]
networks:
  clients:
    internal: true
  egress: {}

Ovo je mrežni fragment za već definirane usluge. Konfigurirajte odobreni prosljeđujući proxy i stvarnog klijenta aplikacije odvojeno. Docker interne mreže dokumentira kao izolirane izvana; u ovom rasporedu samo proxy ima dodatnu vanjsku mrežu.

Uključite negativan slučaj bez upotrebe proxyja: vanjski zahtjev aplikacije trebao bi ne uspjeti. Kod HTTP proxyja s provjerom identiteta odbijeni račun trebao bi proizvesti svoju pogrešku provjere, dok bi prihvaćeni račun trebao dosegnuti cilj s odgovarajućim opažanjem proxyja.

Testirajte dopuštene i zabranjene slučajeve proxyja odvojeno. Držite aplikaciju podalje od drugih vanjskih mreža i ne dodajte način rada host mreže koji zaobilazi proxy. Uspješan zahtjev koristan je dokaz tek kad test omogućuje upravo predviđenu putanju.

Povezani članci