VPN anda tidak menjadikan Cosmos DB peribadi dengan sendirinya
VPN membawa komputer riba anda ke rangkaian, bukan ke dalam pangkalan data. Lihat apa yang perlu dilakukan oleh titik akhir peribadi, zon DNS, mod sambungan dan akses akaun.
Anda menyambungkan komputer riba ke VNet melalui VPN, membuka URL akaun Cosmos DB, dan permintaan masih keluar melalui internet awam. Terowong itu telah menjalankan tugasnya. Apa yang tidak dilakukannya ialah mencipta titik akhir peribadi, menerbitkan rekod DNS peribadi atau mematikan akses awam, kerana itu ialah tiga perubahan berasingan pada akaun, bukan sifat sambungan rangkaian anda. Contoh ini menggunakan Azure Cosmos DB untuk NoSQL, titik akhir peribadi dalam VNet dan komputer riba yang disambungkan ke VNet itu melalui VPN, dan ia mengekalkan alamat aplikasi tanpa perubahan.
Mitos: berada di VPN menjadikan pangkalan data peribadi
Berada di VNet hanya bermakna paket anda boleh mencapai alamat peribadi dalam VNet itu. Ia tidak menyatakan apa-apa tentang di mana nama akaun diselesaikan, dan tidak menyatakan apa-apa tentang sama ada akaun itu masih menerima trafik awam.
Titik akhir peribadi ialah sumber berasingan dengan alamatnya sendiri, langkah kelulusannya sendiri dan pendawaian DNSnya sendiri. Sehingga ia wujud dan diluluskan, nama itu diselesaikan ke titik akhir awam dan trafik anda pergi ke sana tanpa mengira terowong.
Apa yang sebenarnya menjadikan nama itu diselesaikan secara peribadi
Kekalkan titik akhir akaun biasa SDK, sesuatu seperti https://ACCOUNT.documents.azure.com. DNS peribadi harus menyelesaikan nama itu melalui rantaian Private Link ke alamat peribadi titik akhir. Jangan gantikannya dengan URL berangka dan lumpuhkan pemeriksaan sijil, kerana itu menukar masalah DNS dengan masalah keselamatan.
| Example choice | Value |
|---|---|
| Cosmos API | NoSQL |
| Private endpoint subresource | Sql |
| Private DNS zone | privatelink.documents.azure.com |
| SDK connection mode | Gateway |
Nilai-nilai itu khusus untuk API NoSQL. API Cosmos lain bukan entri yang boleh ditukar ganti dalam contoh yang sama, dan menyalin nama subresource daripada API lain menghasilkan titik akhir yang tidak pernah diselesaikan.
Cipta dan luluskan titik akhir melalui aliran kerja Azure yang dibenarkan, kemudian gunakan integrasi kumpulan zon DNS peribadinya. Komputer riba memerlukan penyelesai yang boleh menjawab untuk zon itu, sama ada secara langsung atau melalui pemajuan yang diluluskan, dan laluan klien VPN ke setiap alamat titik akhir yang berkaitan.
Titik akhir peribadi boleh mempunyai lebih daripada satu alamat, termasuk entri global dan serantau. Kekalkan integrasi DNS apabila wilayah akaun berubah daripada menyematkan satu alamat dalam fail hosts, dan ingat bahawa jawapan daripada penyelesai awam yang tidak berkaitan tidak membuktikan apa-apa tentang laluan peribadi. Jika anda memajukan DNS melalui hab, sahkan bahawa pemaju menjawab sebelum anda menyahpepijat klien. Pemaju yang lapuk mengembalikan jawapan awam, yang kelihatan tepat seperti titik akhir yang hilang.
Mod Gateway dan mod Direct tidak boleh ditukar ganti
Mod Gateway menghantar permintaan perkhidmatan melalui HTTPS pada TCP 443. Itulah sebabnya dasar firewall hanya untuk 443 berfungsi dengannya dan itulah sebabnya contoh ini memilihnya secara sengaja.
Mod Direct melalui Private Link mempunyai keperluan kesambungan yang berbeza, termasuk julat port TCP yang lebih luas yang disenaraikan oleh dokumentasi akaun. Dasar yang ditulis untuk mod Gateway tidak boleh digunakan semula secara senyap untuk klien mod Direct, jika tidak SDK akan bersambung dan kemudian tergantung pada operasi data pertama.
Pilih satu mod, catatkannya bersama akaun, dan padankan dasar rangkaian dengannya. Pasukan yang menukar mod semasa menyelesaikan masalah biasanya berakhir dengan set peraturan firewall yang tidak memuaskan kedua-duanya.
Mematikan akses awam ialah suis berasingan
Jika akaun itu sepatutnya peribadi sahaja, lumpuhkan akses rangkaian awam melalui tetapan akaun yang disokong dan sahkan hasilnya. Jangan anggap kewujudan titik akhir peribadi sebagai keputusan akses lengkap, kerana akaun dengan titik akhir peribadi dan akses awam yang didayakan masih menjawab di internet.
Sahkan dari luar VPN serta dari dalam. Permintaan daripada rangkaian yang sepatutnya dikecualikan ialah ujian yang membuktikan tetapan itu berkuat kuasa, dan itulah ujian yang dilangkau oleh kebanyakan tetingkap perubahan.
Kebolehsampaian bukan kebenaran
Operasi SDK yang dibenarkan daripada komputer riba VPN ialah ujian penerimaan, menggunakan URL akaun biasa dan identiti yang dimaksudkan. Kebolehsampaian VPN tidak memberikan kebenaran data Cosmos; satah data memeriksa peranan atau kuncinya sendiri.
Kemudian jalankan penolakan: identiti yang berbeza, dan laluan rangkaian yang tidak sepatutnya mencapai akaun lagi. Jika mana-mana satu berjaya, sempadan yang anda dokumenkan bukan sempadan yang anda bina.
Catat empat fakta apabila selesai: alamat peribadi titik akhir, zon DNS yang menjawab untuk nama akaun, mod sambungan dengan keperluan portnya dan sama ada akses awam dilumpuhkan. Empat perkara ini menjelaskan persediaan kepada orang seterusnya, dan setiap satunya gagal secara berasingan.