Mengisolasi jaringan dengan titik akhir online terkelola

BERLAKU UNTUK:Ekstensi ml Azure CLI v2 (saat ini)Python SDK azure-ai-ml v2 (saat ini)

Saat menyebarkan model pembelajaran mesin ke titik akhir online terkelola, Anda dapat mengamankan komunikasi dengan titik akhir online dengan menggunakan titik akhir privat. Dalam artikel ini, Anda akan mempelajari bagaimana titik akhir privat dapat digunakan untuk mengamankan komunikasi masuk ke titik akhir online terkelola. Anda juga akan mempelajari bagaimana jaringan virtual yang dikelola ruang kerja dapat digunakan untuk menyediakan komunikasi yang aman antara penyebaran dan sumber daya.

Anda dapat mengamankan permintaan penilaian masuk dari klien ke titik akhir online dan mengamankan komunikasi keluar antara penyebaran, sumber daya Azure yang digunakannya, dan sumber daya privat. Keamanan untuk komunikasi masuk dan keluar dikonfigurasi secara terpisah. Untuk informasi selengkapnya tentang titik akhir dan penyebaran, lihat Apa itu titik akhir dan penyebaran.

Diagram arsitektur berikut menunjukkan bagaimana komunikasi mengalir melalui titik akhir privat ke titik akhir online terkelola. Permintaan penilaian masuk dari alur jaringan virtual klien melalui titik akhir privat ruang kerja ke titik akhir online terkelola. Komunikasi keluar dari penyebaran ke layanan ditangani melalui titik akhir privat dari jaringan virtual terkelola ruang kerja ke instans layanan tersebut.

Diagram memperlihatkan komunikasi masuk melalui titik akhir privat ruang kerja dan komunikasi keluar melalui titik akhir privat dari jaringan virtual yang dikelola ruang kerja.

Catatan

  • Artikel ini berfokus pada isolasi jaringan menggunakan jaringan virtual terkelola ruang kerja. Untuk deskripsi metode warisan untuk isolasi jaringan, di mana Azure Pembelajaran Mesin membuat jaringan virtual terkelola untuk setiap penyebaran di titik akhir, lihat Lampiran.
  • Setiap penyebaran diisolasi dari penyebaran lain, terlepas dari komunikasi masuk dan keluar yang dibahas dalam artikel ini. Dengan kata lain, bahkan dengan titik akhir/penyebaran yang memungkinkan internet masuk/keluar, ada isolasi jaringan antara penyebaran, yang memblokir penyebaran apa pun agar tidak terhubung langsung ke penyebaran lain.

Batasan

  • Bendera v1_legacy_mode perlu dinonaktifkan (false) di ruang kerja Azure Machine Learning Anda. Jika bendera ini diaktifkan, Anda tidak dapat membuat titik akhir online terkelola. Untuk informasi selengkapnya, lihat Isolasi jaringan dengan API v2.

  • Jika ruang kerja Azure Machine Learning Anda memiliki titik akhir privat yang dibuat sebelum 24 Mei 2022, Anda harus membuat ulang titik akhir privat ruang kerja sebelum mengonfigurasi titik akhir online Anda untuk menggunakan titik akhir privat. Untuk informasi selengkapnya tentang membuat titik akhir privat untuk ruang kerja Anda, lihat Cara mengonfigurasi titik akhir privat untuk ruang kerja Azure Machine Learning.

    Tip

    Untuk mengonfirmasi kapan ruang kerja dibuat, Anda dapat memeriksa properti ruang kerja.

    Di Studio, buka bagian Directory + Subscription + Workspace (kanan atas Studio) dan pilih View all properties in Azure Portal. Pilih tampilan JSON dari kanan atas halaman "Gambaran Umum", lalu pilih versi API terbaru. Dari halaman ini, Anda dapat memeriksa nilai properties.creationTime.

    Atau, gunakan az ml workspace show dengan CLI, my_ml_client.workspace.get("my-workspace-name") dengan SDK, atau curl di ruang kerja dengan REST API.

  • Saat Anda menggunakan isolasi jaringan dengan titik akhir online, Anda dapat menggunakan sumber daya terkait ruang kerja (Azure Container Registry (ACR), Akun penyimpanan, Key Vault, dan Application Insights) dari grup sumber daya yang berbeda dari ruang kerja Anda. Namun, sumber daya ini harus termasuk dalam langganan dan penyewa yang sama dengan ruang kerja Anda.

Catatan

Isolasi jaringan yang dijelaskan dalam artikel ini berlaku untuk operasi data plane, yaitu operasi yang dihasilkan dari permintaan penilaian (atau penyajian model). Operasi sarana kontrol (seperti permintaan untuk membuat, memperbarui, menghapus, atau mengambil kunci autentikasi) dikirim ke Azure Resource Manager melalui jaringan publik.

Mengamankan permintaan penilaian masuk

Komunikasi masuk yang aman dari klien ke titik akhir online terkelola dimungkinkan dengan menggunakan titik akhir privat untuk ruang kerja Azure Pembelajaran Mesin. Titik akhir privat ini pada jaringan virtual klien berkomunikasi dengan ruang kerja titik akhir online terkelola dan merupakan sarana di mana titik akhir online terkelola dapat menerima permintaan penilaian masuk dari klien.

Untuk mengamankan permintaan penilaian ke titik akhir online, sehingga klien hanya dapat mengaksesnya melalui titik akhir privat ruang kerja, atur public_network_access bendera untuk titik akhir ke disabled. Setelah membuat titik akhir, Anda dapat memperbarui pengaturan ini untuk mengaktifkan akses jaringan publik jika diinginkan.

Atur bendera titik public_network_access akhir ke disabled:

az ml online-endpoint create -f endpoint.yml --set public_network_access=disabled

Ketika public_network_access adalah disabled, permintaan penilaian masuk diterima menggunakan titik akhir privat ruang kerja, dan titik akhir tidak dapat dijangkau dari jaringan publik.

Atau, jika Anda mengatur public_network_access ke enabled, titik akhir dapat menerima permintaan penilaian masuk dari internet.

Mengamankan akses keluar dengan jaringan virtual terkelola ruang kerja

Untuk mengamankan komunikasi keluar dari penyebaran ke layanan, Anda perlu mengaktifkan isolasi jaringan virtual terkelola untuk ruang kerja Azure Pembelajaran Mesin Anda sehingga Azure Pembelajaran Mesin dapat membuat jaringan virtual terkelola untuk ruang kerja. Semua titik akhir online terkelola di ruang kerja (dan sumber daya komputasi terkelola untuk ruang kerja, seperti kluster komputasi dan instans komputasi) secara otomatis menggunakan jaringan virtual yang dikelola ruang kerja ini, dan penyebaran di bawah titik akhir berbagi titik akhir privat jaringan virtual terkelola untuk komunikasi dengan sumber daya ruang kerja.

Saat Anda mengamankan ruang kerja Anda dengan jaringan virtual terkelola, egress_public_access bendera untuk penyebaran online terkelola tidak lagi berlaku. Hindari mengatur bendera ini saat membuat penyebaran online terkelola.

Untuk komunikasi keluar dengan jaringan virtual yang dikelola ruang kerja, Azure Pembelajaran Mesin:

  • Membuat titik akhir privat untuk jaringan virtual terkelola yang akan digunakan untuk komunikasi dengan sumber daya Azure yang digunakan oleh ruang kerja, seperti Azure Storage, Azure Key Vault, dan Azure Container Registry.
  • Memungkinkan penyebaran untuk mengakses Microsoft Container Registry (MCR), yang dapat berguna ketika Anda ingin menggunakan lingkungan yang dikumpulkan atau penyebaran tanpa kode MLflow.
  • Memungkinkan pengguna mengonfigurasi aturan keluar titik akhir privat ke sumber daya privat dan mengonfigurasi aturan keluar (tag layanan atau FQDN) untuk sumber daya publik. Untuk informasi selengkapnya tentang cara mengelola aturan keluar, lihat Mengelola aturan keluar.

Selain itu, Anda dapat mengonfigurasi dua mode isolasi untuk lalu lintas keluar dari jaringan virtual yang dikelola ruang kerja, yaitu:

  • Izinkan internet keluar, untuk mengizinkan semua lalu lintas keluar internet dari jaringan virtual terkelola
  • Izinkan hanya keluar yang disetujui, untuk mengontrol lalu lintas keluar menggunakan titik akhir privat, aturan keluar FQDN, dan aturan keluar tag layanan.

Misalnya, jaringan virtual terkelola ruang kerja Anda berisi dua penyebaran di bawah titik akhir online terkelola, kedua penyebaran dapat menggunakan titik akhir privat ruang kerja untuk berkomunikasi dengan:

  • Ruang kerja Azure Pembelajaran Mesin
  • Blob Azure Storage yang terkait dengan ruang kerja
  • Azure Container Registry untuk ruang kerja
  • The Azure Key Vault
  • (Opsional) sumber daya privat tambahan yang mendukung titik akhir privat.

Untuk mempelajari selengkapnya tentang konfigurasi untuk jaringan virtual terkelola ruang kerja, lihat Arsitektur jaringan virtual terkelola.

Skenario untuk konfigurasi isolasi jaringan

Ruang kerja Azure Pembelajaran Mesin anda dan titik akhir online terkelola masing-masing memiliki public_network_access bendera yang dapat Anda gunakan untuk mengonfigurasi komunikasi masuk mereka. Di sisi lain, komunikasi keluar dari penyebaran tergantung pada jaringan virtual terkelola ruang kerja.

Komunikasi dengan titik akhir online terkelola

Misalkan titik akhir online terkelola memiliki penyebaran yang menggunakan model AI, dan Anda ingin menggunakan aplikasi untuk mengirim permintaan penilaian ke titik akhir. Anda dapat memutuskan konfigurasi isolasi jaringan apa yang akan digunakan untuk titik akhir online terkelola sebagai berikut:

Untuk komunikasi masuk:

Jika aplikasi tersedia untuk umum di internet, Maka Anda perlu mengaktifkanpublic_network_access untuk titik akhir sehingga dapat menerima permintaan penilaian masuk dari aplikasi.

Namun, katakanlah aplikasi bersifat privat, seperti aplikasi internal dalam organisasi Anda. Dalam skenario ini, Anda ingin model AI hanya digunakan dalam organisasi Anda daripada mengeksposnya ke internet. Oleh karena itu, Anda perlu menonaktifkan titik public_network_access akhir sehingga dapat menerima permintaan penilaian masuk hanya melalui titik akhir privat ruang kerjanya.

Untuk komunikasi keluar (penyebaran):

Misalkan penyebaran Anda perlu mengakses sumber daya Azure privat (seperti blob Azure Storage, ACR, dan Azure Key Vault), atau penyebaran tidak dapat diterima untuk mengakses internet. Dalam hal ini, Anda perlu mengaktifkanjaringan virtual terkelola ruang kerja dengan mode isolasi keluar yang diizinkan saja. Mode isolasi ini memungkinkan komunikasi keluar dari penyebaran ke tujuan yang disetujui saja, sehingga melindungi dari penyelundupan data. Selain itu, Anda dapat menambahkan aturan keluar untuk ruang kerja, untuk memungkinkan akses ke lebih banyak sumber daya privat atau publik. Untuk informasi selengkapnya, lihat Mengonfigurasi jaringan virtual terkelola untuk hanya mengizinkan keluar yang disetujui.

Namun, jika Anda ingin penyebaran mengakses internet, Anda dapat menggunakan jaringan virtual terkelola ruang kerja dengan mode isolasi keluar internet yang diizinkan. Selain dapat mengakses internet, Anda akan dapat menggunakan titik akhir privat jaringan virtual terkelola untuk mengakses sumber daya Azure privat yang Anda butuhkan.

Terakhir, jika penyebaran Anda tidak perlu mengakses sumber daya Azure privat dan Anda tidak perlu mengontrol akses ke internet, maka Anda tidak perlu menggunakan jaringan virtual yang dikelola ruang kerja.

Komunikasi masuk ke ruang kerja Azure Pembelajaran Mesin

Anda dapat menggunakan public_network_access bendera ruang kerja Azure Pembelajaran Mesin untuk mengaktifkan atau menonaktifkan akses ruang kerja masuk. Biasanya, jika Anda mengamankan komunikasi masuk ke ruang kerja Anda (dengan menonaktifkan bendera ruang public_network_access kerja) Anda juga ingin mengamankan komunikasi masuk ke titik akhir online terkelola Anda.

Bagan berikut ini memperlihatkan alur kerja umum untuk mengamankan komunikasi masuk ke ruang kerja Azure Pembelajaran Mesin dan titik akhir online terkelola Anda. Untuk keamanan terbaik, kami sarankan Anda menonaktifkan public_network_access bendera untuk ruang kerja dan titik akhir online terkelola untuk memastikan bahwa keduanya tidak dapat diakses melalui internet publik. Jika ruang kerja tidak memiliki titik akhir privat, Anda bisa membuatnya, pastikan untuk menyertakan resolusi DNS yang tepat. Anda kemudian dapat mengakses titik akhir online terkelola dengan menggunakan titik akhir privat ruang kerja.

Cuplikan layar memperlihatkan alur kerja umum untuk mengamankan komunikasi masuk ke ruang kerja Anda dan titik akhir online terkelola.

Catatan

Titik akhir online terkelola berbagi titik akhir privat ruang kerja. Jika Anda menambahkan catatan DNS secara manual ke zona privatelink.api.azureml.msDNS privat , rekaman A dengan kartubebas *.<per-workspace globally-unique identifier>.inference.<region>.privatelink.api.azureml.ms harus ditambahkan untuk merutekan semua titik akhir di bawah ruang kerja ke titik akhir privat.

Untuk informasi selengkapnya tentang resolusi DNS untuk ruang kerja dan titik akhir privat Anda, lihat Cara menggunakan ruang kerja Anda dengan server DNS kustom.

Lampiran

Mengamankan akses keluar dengan metode isolasi jaringan lama

Untuk titik akhir online terkelola, Anda juga dapat mengamankan komunikasi keluar antara penyebaran dan sumber daya dengan menggunakan jaringan virtual terkelola Azure Pembelajaran Mesin untuk setiap penyebaran di titik akhir. Komunikasi keluar yang aman juga ditangani dengan menggunakan titik akhir privat ke instans layanan tersebut.

Catatan

Kami sangat menyarankan Anda menggunakan pendekatan yang dijelaskan dalam Mengamankan akses keluar dengan jaringan virtual yang dikelola ruang kerja alih-alih metode warisan ini.

Untuk membatasi komunikasi antara penyebaran dan sumber daya eksternal, termasuk sumber daya Azure yang digunakannya, Anda harus memastikan bahwa:

  • Bendera penyebaran egress_public_network_access adalah disabled. Bendera ini memastikan bahwa unduhan model, kode, dan gambar yang diperlukan oleh penyebaran diamankan dengan titik akhir privat. Setelah membuat penyebaran, Anda tidak dapat memperbarui (mengaktifkan atau menonaktifkan) egress_public_network_access bendera. Mencoba mengubah bendera saat memperbarui penyebaran gagal dengan kesalahan.

  • Ruang kerja memiliki tautan privat yang memungkinkan akses ke sumber daya Azure melalui titik akhir privat.

  • Ruang kerja memiliki public_network_access bendera yang dapat diaktifkan atau dinonaktifkan, jika Anda berencana menggunakan penyebaran online terkelola yang menggunakan keluar publik, maka Anda juga harus mengonfigurasi ruang kerja untuk mengizinkan akses publik. Ini karena komunikasi keluar dari penyebaran online adalah ke API ruang kerja. Ketika penyebaran dikonfigurasi untuk menggunakan keluar publik, maka ruang kerja harus dapat menerima komunikasi publik tersebut (mengizinkan akses publik).

Saat Anda memiliki beberapa penyebaran, dan Anda mengonfigurasi egress_public_network_access ke disabled untuk setiap penyebaran di titik akhir online terkelola, setiap penyebaran memiliki jaringan virtual terkelola Azure Pembelajaran Mesin independen sendiri. Untuk setiap jaringan virtual, Azure Pembelajaran Mesin membuat tiga titik akhir privat untuk komunikasi ke layanan berikut:

  • Ruang kerja Azure Pembelajaran Mesin
  • Blob Azure Storage yang terkait dengan ruang kerja
  • Azure Container Registry untuk ruang kerja

Misalnya, jika Anda mengatur egress_public_network_access bendera ke disabled untuk dua penyebaran titik akhir online terkelola, total enam titik akhir privat dibuat. Setiap penyebaran akan menggunakan tiga titik akhir privat untuk berkomunikasi dengan ruang kerja, blob, dan registri kontainer.

Penting

Azure Pembelajaran Mesin tidak mendukung peering antara jaringan virtual terkelola penyebaran dan jaringan virtual klien Anda. Untuk akses aman ke sumber daya yang diperlukan oleh penyebaran, kami menggunakan titik akhir privat untuk berkomunikasi dengan sumber daya.

Diagram berikut menunjukkan permintaan penilaian masuk dari jaringan virtual klien yang mengalir melalui titik akhir privat ruang kerja ke titik akhir online terkelola. Diagram ini juga menunjukkan dua penyebaran online, masing-masing di jaringan virtual terkelola Azure Pembelajaran Mesin sendiri. Setiap jaringan virtual penyebaran memiliki tiga titik akhir privat untuk komunikasi keluar dengan ruang kerja Azure Pembelajaran Mesin, blob Azure Storage yang terkait dengan ruang kerja, dan Azure Container Registry untuk ruang kerja.

Diagram isolasi jaringan secara keseluruhan dengan metode warisan.

Untuk menonaktifkan egress_public_network_access dan membuat titik akhir privat:

az ml online-deployment create -f deployment.yml --set egress_public_network_access=disabled

Untuk mengonfirmasi pembuatan titik akhir privat, pertama-tama periksa akun penyimpanan dan registri kontainer yang terkait dengan ruang kerja (lihat Mengunduh file konfigurasi), temukan setiap sumber daya dari portal Azure, dan periksa Private endpoint connections tab di bawah Networking menu.

Penting

  • Seperti disebutkan sebelumnya, komunikasi keluar dari penyebaran titik akhir online terkelola adalah ke API ruang kerja. Ketika titik akhir dikonfigurasi untuk menggunakan keluar publik (dengan kata lain, public_network_access bendera untuk titik akhir diatur ke enabled), maka ruang kerja harus dapat menerima komunikasi publik tersebut (public_network_access bendera untuk ruang kerja diatur ke enabled).
  • Ketika penyebaran online dibuat dengan egress_public_network_access bendera diatur ke disabled, mereka akan memiliki akses ke sumber daya yang aman (ruang kerja, blob, dan registri kontainer) saja. Misalnya, jika penyebaran menggunakan aset model yang diunggah ke akun penyimpanan lain, unduhan model akan gagal. Pastikan aset model ada di akun penyimpanan yang terkait dengan ruang kerja.
  • Ketika egress_public_network_access diatur ke disabled, penyebaran hanya dapat mengakses sumber daya terkait ruang kerja yang diamankan di jaringan virtual. Sebaliknya, kapan egress_public_network_access diatur ke enabled, penyebaran hanya dapat mengakses sumber daya dengan akses publik, yang berarti tidak dapat mengakses sumber daya yang diamankan di jaringan virtual.

Tabel berikut mencantumkan konfigurasi yang didukung saat mengonfigurasikan komunikasi masuk dan keluar untuk titik akhir online:

Konfigurasi Masuk
(Properti titik akhir)
Keluar
(Properti penyebaran)
Didukung?
mengamankan masuk dengan keluar yang aman public_network_access dinonaktifkan egress_public_network_access dinonaktifkan Ya
mengamankan masuk dengan keluar publik public_network_access dinonaktifkan egress_public_network_access diaktifkan
Ruang kerja juga harus mengizinkan akses publik karena penyebaran keluar adalah ke API ruang kerja.
Ya
masuk publik dengan keluar aman public_network_access diaktifkan egress_public_network_access dinonaktifkan Ya
inbound publik dengan outbound publik public_network_access diaktifkan egress_public_network_access diaktifkan
Ruang kerja juga harus mengizinkan akses publik karena penyebaran keluar adalah ke API ruang kerja.
Ya

Langkah berikutnya