Un proxy local que escolta al costat d’una aplicació no reprodueix una xarxa que requereix accés mitjançant proxy. L’aplicació pot ignorar el proxy configurat, connectar-se directament i tot i així informar d’èxit.

Separeu la xarxa de l’aplicació del camí de sortida del proxy. Una disposició basada en contenidors posa l’aplicació només en una xarxa interna i dona al proxy una segona xarxa de sortida. En una definició de Compose existent, els enllaços de xarxa poden semblar així:

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

Aquest és un fragment de xarxa per a serveis ja definits. Configureu el proxy d’reenviament aprovat i el client real de l’aplicació per separat. Docker documenta les xarxes internes com a aïllades de l’exterior; en aquesta disposició només el proxy té la xarxa exterior addicional.

Incloeu un cas negatiu sense ús de proxy: la sol·licitud externa de l’aplicació hauria de fallar. En un proxy HTTP autenticat, un compte rebutjat hauria de produir el seu error d’autenticació, mentre que el compte acceptat hauria d’arribar a l’objectiu amb una observació corresponent del proxy.

Proveu per separat els casos permesos i denegats del proxy. Manteniu l’aplicació fora d’altres xarxes externes i eviteu afegir un mode de xarxa d’amfitrió que eludeixi el proxy. Una sol·licitud correcta és una prova útil només quan la ruta prevista és la que la prova posa a disposició.

Articles relacionats