Συνδέετε τον φορητό υπολογιστή στο VNet μέσω VPN, ανοίγετε τη διεύθυνση URL του λογαριασμού Cosmos DB και το αίτημα εξακολουθεί να φεύγει μέσω του δημόσιου διαδικτύου. Η σήραγγα έκανε τη δουλειά της. Αυτό που δεν έκανε ήταν να δημιουργήσει ένα ιδιωτικό τελικό σημείο, να δημοσιεύσει την ιδιωτική εγγραφή DNS ή να απενεργοποιήσει τη δημόσια πρόσβαση, επειδή πρόκειται για τρεις ξεχωριστές αλλαγές στον λογαριασμό και όχι ιδιότητες της σύνδεσής σας στο δίκτυο. Αυτό το παράδειγμα χρησιμοποιεί το Azure Cosmos DB για NoSQL, ένα ιδιωτικό τελικό σημείο σε ένα VNet και έναν φορητό υπολογιστή συνδεδεμένο σε αυτό το VNet μέσω VPN, και διατηρεί τη διεύθυνση της εφαρμογής αμετάβλητη.

Ο μύθος: η παρουσία στο VPN κάνει τη βάση δεδομένων ιδιωτική

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

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

Τι κάνει στην πραγματικότητα το όνομα να επιλύεται ιδιωτικά

Κρατήστε το κανονικό τελικό σημείο λογαριασμού του SDK, κάτι σαν https://ACCOUNT.documents.azure.com. Το ιδιωτικό DNS θα πρέπει να επιλύει αυτό το όνομα μέσω της αλυσίδας Private Link στις ιδιωτικές διευθύνσεις του τελικού σημείου. Μην το αντικαταστήσετε με αριθμητική διεύθυνση URL και μην απενεργοποιήσετε τους ελέγχους πιστοποιητικών, επειδή αυτό ανταλλάσσει ένα πρόβλημα DNS με ένα πρόβλημα ασφάλειας.

Example choiceValue
Cosmos APINoSQL
Private endpoint subresourceSql
Private DNS zoneprivatelink.documents.azure.com
SDK connection modeGateway

Αυτές οι τιμές είναι ειδικές για το NoSQL API. Τα άλλα Cosmos API δεν είναι εναλλάξιμες καταχωρίσεις στο ίδιο παράδειγμα, και η αντιγραφή του ονόματος υποπόρου από διαφορετικό API παράγει ένα τελικό σημείο που δεν επιλύεται ποτέ.

Δημιουργήστε και εγκρίνετε το τελικό σημείο μέσω της εξουσιοδοτημένης ροής εργασίας του Azure και, στη συνέχεια, χρησιμοποιήστε την ενσωμάτωσή του με την ομάδα ιδιωτικών ζωνών DNS. Ο φορητός υπολογιστής χρειάζεται έναν resolver που μπορεί να απαντήσει για αυτή τη ζώνη, είτε απευθείας είτε μέσω εγκεκριμένης προώθησης, και μια διαδρομή πελάτη VPN σε κάθε σχετική διεύθυνση τελικού σημείου.

Ένα ιδιωτικό τελικό σημείο μπορεί να έχει περισσότερες από μία διευθύνσεις, συμπεριλαμβανομένων παγκόσμιων και περιφερειακών καταχωρίσεων. Διατηρήστε την ενσωμάτωση DNS όταν αλλάζουν οι περιοχές του λογαριασμού αντί να καρφιτσώσετε μία διεύθυνση σε ένα αρχείο hosts, και θυμηθείτε ότι μια απάντηση από έναν άσχετο δημόσιο resolver δεν αποδεικνύει τίποτα για την ιδιωτική διαδρομή. Αν προωθείτε DNS μέσω ενός hub, επιβεβαιώστε ότι ο προωθητής απαντά πριν κάνετε αποσφαλμάτωση στον πελάτη. Ένας παρωχημένος προωθητής επιστρέφει τη δημόσια απάντηση, που μοιάζει ακριβώς με ένα τελικό σημείο που λείπει.

Η λειτουργία Gateway και η λειτουργία Direct δεν είναι εναλλάξιμες

Η λειτουργία Gateway στέλνει αιτήματα υπηρεσίας μέσω HTTPS στο TCP 443. Γι' αυτό λειτουργεί γι' αυτήν μια πολιτική τείχους προστασίας μόνο για το 443 και γι' αυτό αυτό το παράδειγμα την επιλέγει σκόπιμα.

Η λειτουργία Direct μέσω Private Link έχει διαφορετικές απαιτήσεις συνδεσιμότητας, συμπεριλαμβανομένου ενός ευρύτερου εύρους θυρών TCP που αναφέρει η τεκμηρίωση του λογαριασμού. Μια πολιτική γραμμένη για τη λειτουργία Gateway δεν πρέπει να επαναχρησιμοποιείται σιωπηλά για πελάτη σε λειτουργία Direct, αλλιώς το SDK θα συνδεθεί και στη συνέχεια θα κολλήσει στην πρώτη λειτουργία δεδομένων.

Επιλέξτε μία λειτουργία, καταγράψτε την μαζί με τον λογαριασμό και κάντε την πολιτική δικτύου να ταιριάζει με αυτήν. Οι ομάδες που αλλάζουν λειτουργίες κατά την αντιμετώπιση προβλημάτων καταλήγουν συνήθως με ένα σύνολο κανόνων τείχους προστασίας που δεν ικανοποιεί καμία από τις δύο.

Η απενεργοποίηση της δημόσιας πρόσβασης είναι ξεχωριστός διακόπτης

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

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

Η προσβασιμότητα δεν είναι άδεια

Μια επιτρεπόμενη λειτουργία SDK από τον φορητό υπολογιστή του VPN είναι η δοκιμή αποδοχής, με την κανονική διεύθυνση URL του λογαριασμού και την προβλεπόμενη ταυτότητα. Η προσβασιμότητα μέσω VPN δεν παρέχει δικαιώματα δεδομένων Cosmos· το επίπεδο δεδομένων ελέγχει τους δικούς του ρόλους ή κλειδιά.

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

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

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