Ένας τοπικός διαμεσολαβητής που ακούει δίπλα σε μια εφαρμογή δεν αναπαράγει δίκτυο που απαιτεί πρόσβαση μέσω διαμεσολαβητή. Η εφαρμογή μπορεί να αγνοήσει τον ρυθμισμένο διαμεσολαβητή, να συνδεθεί απευθείας και παρ’ όλα αυτά να αναφέρει επιτυχία.

Διαχωρίστε το δίκτυο της εφαρμογής από την εξωτερική διαδρομή του διαμεσολαβητή. Μια διάταξη με κοντέινερ τοποθετεί την εφαρμογή μόνο σε εσωτερικό δίκτυο και δίνει στον διαμεσολαβητή δεύτερο δίκτυο εξόδου. Σε υπάρχοντα ορισμό Compose, οι συνδέσεις δικτύου μπορεί να μοιάζουν έτσι:

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

Αυτό είναι ένα απόσπασμα δικτύου για ήδη ορισμένες υπηρεσίες. Ρυθμίστε τον εγκεκριμένο διαμεσολαβητή προώθησης και τον πραγματικό πελάτη της εφαρμογής χωριστά. Το Docker τεκμηριώνει τα εσωτερικά δίκτυα ως απομονωμένα εξωτερικά· μόνο ο διαμεσολαβητής έχει το πρόσθετο εξωτερικό δίκτυο σε αυτή τη διάταξη.

Συμπεριλάβετε αρνητική περίπτωση χωρίς χρήση διαμεσολαβητή: το εξωτερικό αίτημα της εφαρμογής πρέπει να αποτύχει. Σε διαμεσολαβητή HTTP με έλεγχο ταυτότητας, ο απορριφθείς λογαριασμός πρέπει να παράγει το σφάλμα ταυτοποίησής του, ενώ ο αποδεκτός λογαριασμός πρέπει να φτάνει στον στόχο με αντίστοιχη παρατήρηση από τον διαμεσολαβητή.

Δοκιμάστε χωριστά τις επιτρεπόμενες και τις απορριπτόμενες περιπτώσεις του διαμεσολαβητή. Κρατήστε την εφαρμογή έξω από άλλα εξωτερικά δίκτυα και μην προσθέτετε λειτουργία δικτύου υπολογιστή που παρακάμπτει τον διαμεσολαβητή. Ένα επιτυχές αίτημα είναι χρήσιμη απόδειξη μόνο όταν η δοκιμή παρέχει ακριβώς την προβλεπόμενη διαδρομή.

Σχετικά άρθρα