Πρώτα τοποθετήστε ή προσαρτήστε το εγκεκριμένο αρχείο PEM CA μέσα στο dev container. Η εμπιστοσύνη του προγράμματος περιήγησης του host και μια διαδρομή μόνο στον host δεν παρέχουν bytes πιστοποιητικού στη διεργασία Node.

Στη συνέχεια συγχωνεύστε το στο υπάρχον .devcontainer/devcontainer.json για το VS Code και τις σχετικές θυγατρικές διεργασίες:

"remoteEnv": {
  "NODE_EXTRA_CA_CERTS": "/usr/local/share/certs/corporate-ca.pem"
}

Η διαδρομή βρίσκεται μέσα στο container. Ανακατασκευάστε ή ανοίξτε ξανά μέσω του κύκλου ζωής των Dev Containers ώστε η σχετική διεργασία Node να ξεκινήσει με αυτό.

Το NODE_EXTRA_CA_CERTS επεκτείνει το σύνολο CA του Node κατά την εκκίνηση. Η αλλαγή του process.env μετά δεν επαναφορτώνει αυτό το σύνολο, και ένας πελάτης με ρητή επιλογή ca μπορεί να επιλέξει διαφορετική πηγή εμπιστοσύνης.

Για περιβάλλον σε επίπεδο container, χρησιμοποιήστε το containerEnv με τη διαμόρφωση image ή Dockerfile, ή το περιβάλλον της υπηρεσίας Compose, αντί να υποθέτετε ότι το remoteEnv καλύπτει κάθε διεργασία.

Αυτό παρέχει εμπιστοσύνη χωρίς το NODE_TLS_REJECT_UNAUTHORIZED=0. Η επιλογή proxy παραμένει ξεχωριστή: το CA δεν μπορεί να δρομολογήσει μια σύνδεση στον listener ή να επισκευάσει ένα μη προσβάσιμο endpoint.

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