Proxy lokal yang mendengarkan di samping aplikasi tidak mereproduksi jaringan yang menuntut akses lewat proxy. Aplikasi bisa mengabaikan proxy yang dikonfigurasi, terhubung langsung, dan tetap melaporkan keberhasilan.

Pisahkan jaringan aplikasi dari jalur keluar proxy. Satu penataan berbasis kontainer menempatkan aplikasi hanya pada jaringan internal dan memberi proxy jaringan keluar kedua. Pada definisi Compose yang sudah ada, sambungan jaringan dapat terlihat seperti ini:

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

Ini adalah fragmen jaringan untuk layanan yang sudah didefinisikan. Konfigurasikan proxy penerus yang disetujui dan klien sebenarnya dari aplikasi secara terpisah. Docker mendokumentasikan jaringan internal sebagai terisolasi dari luar; dalam penataan ini hanya proxy yang memiliki jaringan luar tambahan.

Sertakan kasus negatif tanpa penggunaan proxy: permintaan eksternal aplikasi seharusnya gagal. Pada proxy HTTP terautentikasi, akun yang ditolak seharusnya menghasilkan kegagalan autentikasinya, sedangkan akun yang diterima seharusnya mencapai target dengan pengamatan proxy yang sesuai.

Uji kasus yang diizinkan dan yang ditolak pada proxy secara terpisah. Jauhkan aplikasi dari jaringan eksternal lain dan jangan menambahkan mode jaringan host yang melewati proxy. Permintaan yang berhasil baru menjadi bukti berguna setelah uji hanya menyediakan jalur yang dimaksud.

Artikel terkait