Menggunakan titik akhir dan aturan layanan Virtual Network untuk Azure Database for MySQL

BERLAKU UNTUKAzure Database for MySQL - Server Tunggal

Penting

Server tunggal Azure Database for MySQL berada di jalur penghentian. Kami sangat menyarankan Agar Anda meningkatkan ke server fleksibel Azure Database for MySQL. Untuk informasi selengkapnya tentang migrasi ke server fleksibel Azure Database for MySQL, lihat Apa yang terjadi pada Server Tunggal Azure Database for MySQL?

Aturan jaringan virtual adalah salah satu fitur keamanan firewall yang mengontrol apakah server Azure Database for MySQL Anda menerima komunikasi yang dikirim dari subnet tertentu di jaringan virtual. Artikel ini menjelaskan mengapa fitur aturan jaringan virtual terkadang merupakan opsi terbaik Anda untuk memungkinkan komunikasi dengan aman ke server Azure Database for MySQL Anda.

Untuk membuat aturan jaringan virtual, pertama-tama harus ada jaringan virtual (VNet) dan titik akhir layanan jaringan virtual agar aturan tersebut dapat dirujuk. Gambar berikut ini menggambarkan cara kerja titik akhir layanan Microsoft Azure Virtual Network dengan Azure Database for MySQL:

Example of how a VNet Service Endpoint works

Catatan

Fitur ini tersedia di semua wilayah Azure tempat Azure Database for MySQL disebarkan untuk server Tujuan Umum dan Memori Dioptimalkan. Dalam kasus serekan VNet, jika lalu lintas mengalir melalui VNet Gateway umum dengan titik akhir layanan dan seharusnya mengalir ke serekan, harap membuat aturan ACL/VNet untuk mengizinkan Azure Virtual Machines di Gateway VNet mengakses server Azure Database for MySQL.

Anda juga dapat mempertimbangkan menggunakan Azure Private Link untuk sambungan. Azure Private Link menyediakan alamat IP privat di VNet Anda untuk server Azure Database for MySQL.

Terminologi dan deskripsi

Jaringan virtual: Anda bisa memiliki jaringan virtual yang terkait dengan langganan Azure Anda.

Subnet: Jaringan virtual berisi subnet. Setiap komputer virtual Azure (VM) yang telah Anda miliki ditetapkan ke subnet. Satu subnet dapat berisi beberapa VM atau node komputasi lainnya. Simpul komputasi yang berada di luar jaringan virtual Anda tidak dapat mengakses jaringan virtual Anda kecuali Anda mengonfigurasi keamanan Anda untuk memungkinkan akses.

Titik akhir layanan Virtual Network:Titik akhir layanan Microsoft Azure Virtual Network adalah subnet yang nilai propertinya menyertakan satu atau beberapa nama jenis layanan Azure formal. Dalam artikel ini, kami tertarik pada nama jenis Microsoft.Sql, yang merujuk ke layanan Azure bernama SQL Database. Tag layanan ini juga berlaku untuk layanan Azure Database for MySQL and PostgreSQL. Penting untuk diketahui bahwa ketika menerapkan tag layanan Microsoft.Sql ke titik akhir layanan VNet, hal tersebut akan mengonfigurasi lalu lintas titik akhir layanan untuk semua server Azure SQL Database, Azure Database for MySQL, dan Azure Database for PostgreSQL pada subnet.

Aturan jaringan virtual: Aturan jaringan virtual untuk server Azure Database for MySQL Anda adalah subnet yang tercantum dalam daftar kontrol akses (ACL) server Azure Database for MySQL Anda. Untuk berada di daftar kontrol akses untuk server Azure Database for MySQL, subnet harus berisi nama jenis Microsoft.Sql.

Aturan jaringan virtual memberi tahu server Azure Database for MySQL Anda untuk menerima komunikasi dari setiap simpul yang ada di subnet.

Keuntungan aturan jaringan virtual

Sampai Anda mengambil tindakan, VM di subnet Anda tidak dapat berkomunikasi dengan server Azure Database for MySQL. Salah satu tindakan yang menetapkan komunikasi adalah pembuatan aturan jaringan virtual. Alasan untuk memilih pendekatan aturan VNet memerlukan diskusi perbandingan dan perbedaan yang melibatkan opsi keamanan pesaing yang ditawarkan oleh firewall.

J. Perbolehkan akses ke layanan Azure

Panel keamanan Sambungan memiliki tombol AKTIF/NONAKTIF yang berlabel Izinkan akses ke layanan Azure. Pengaturan AKTIF akan mengizinkan komunikasi dari semua alamat IP Azure dan semua subnet Azure. IP atau subnet Azure ini mungkin tidak dimiliki oleh Anda. Pengaturan AKTIF ini mungkin lebih terbuka daripada yang Anda inginkan untuk database Azure Database for MySQL Anda. Fitur aturan jaringan virtual menawarkan kontrol granular yang jauh lebih baik.

B. Aturan IP

Firewall Azure Database for MySQL memungkinkan Anda menentukan rentang alamat IP untuk komunikasi yang akan diterima ke Database Azure Database for MySQL. Pendekatan ini baik untuk alamat IP stabil yang berada di luar jaringan privat Azure. Tetapi banyak simpul di dalam jaringan privat Azure yang dikonfigurasi dengan alamat IP dinamis. Alamat IP dinamis bisa saja berubah, seperti saat VM Anda dimulai ulang. Akan sia-sia untuk menentukan alamat IP dinamis dalam aturan firewall, di lingkungan produksi.

Anda dapat menyelamatkan opsi IP dengan mendapatkan alamat IP statik untuk VM Anda. Untuk detailnya, lihat Konfigurasikan alamat IP privat untuk komputer virtual menggunakan portal Microsoft Azure.

Namun, pendekatan IP statik bisa menjadi sulit dikelola, dan mahal ketika dilakukan dalam skala besar. Aturan jaringan virtual lebih mudah dibuat dan dikelola.

Detail tentang aturan jaringan virtual

Bagian ini menjelaskan beberapa detail tentang aturan jaringan virtual.

Hanya satu wilayah geografis

Setiap titik akhir layanan Microsoft Azure Virtual Network hanya berlaku untuk satu wilayah Azure. Titik akhir tidak memungkinkan wilayah lain untuk menerima komunikasi dari subnet.

Setiap aturan jaringan virtual terbatas pada wilayah tempat titik akhir yang mendasarinya penerapannya.

Tingkat server, bukan tingkat database

Setiap aturan jaringan virtual berlaku untuk seluruh server Azure Database for MySQL Anda, bukan hanya untuk satu database tertentu di server. Dengan kata lain, aturan jaringan virtual berlaku di tingkat server, bukan di tingkat database.

Peran administrasi keamanan

Ada pemisahan peran keamanan dalam administrasi titik akhir layanan Microsoft Azure Virtual Network. Tindakan diperlukan dari masing-masing peran berikut:

  • Admin Jaringan: Aktifkan titik akhir.
  • Admin Database: Perbarui daftar kontrol akses (ACL) untuk menambahkan subnet yang diberikan ke server Azure Database for MySQL.

Alternatif RBAC Azure:

Peran Admin Jaringan dan Admin Database memiliki lebih banyak kemampuan daripada yang diperlukan untuk mengelola aturan jaringan virtual. Hanya sebagian kemampuan mereka yang diperlukan.

Anda memiliki opsi untuk menggunakan kontrol akses berbasis peran Azure (Azure RBAC) di Azure untuk membuat satu peran kustom yang hanya memiliki subset kemampuan yang diperlukan. Peran kustom dapat digunakan alih-alih melibatkan Admin Jaringan atau Admin Database. Area permukaan pemaparan keamanan Anda lebih rendah jika Anda menambahkan pengguna ke peran kustom daripada menambahkan pengguna ke dua peran administrator utama lainnya.

Catatan

Dalam beberapa kasus, Azure Database for MySQL dan VNet-subnet berada dalam langganan yang berbeda. Dalam kasus ini, Anda harus memastikan konfigurasi berikut:

  • Kedua langganan harus berada di penyewa Microsoft Entra yang sama.
  • Pengguna memiliki izin yang diperlukan untuk memulai operasi, seperti mengaktifkan titik akhir layanan dan menambahkan subnet VNet ke Server yang diberikan.
  • Pastikan bahwa kedua langganan memiliki penyedia sumber Microsoft.Sql dan Microsoft.DBforMySQL yang terdaftar. Untuk mengetahui informasi selengkapnya, lihat panduan pendaftaran-manajer-sumber daya

Pembatasan

Untuk Azure Database for MySQL, fitur aturan jaringan virtual memiliki batasan berikut:

  • Aplikasi web dapat dipetakan ke IP privat di VNet/subnet. Bahkan jika titik akhir layanan dibuat AKTIF dari VNet/subnet yang diberikan, sambungan dari Aplikasi Web ke server akan memiliki sumber IP publik Azure, bukan sumber VNet/subnet. Untuk mengaktifkan konektivitas dari aplikasi web ke server yang memiliki aturan firewall VNet, Anda harus Mengizinkan layanan Azure mengakses server di server.

  • Di firewall untuk Azure Database for MySQL anda, setiap aturan jaringan virtual mereferensikan subnet. Semua subnet yang direferensikan ini harus dihosting di wilayah geografis yang sama yang menghosting Azure Database for MySQL.

  • Setiap server Azure Database for MySQL dapat memiliki hingga 128 entri ACL untuk jaringan virtual yang diberikan.

  • Aturan jaringan virtual hanya berlaku untuk jaringan virtual Azure Resource Manager dan bukan untuk jaringan model penyebaran klasik.

  • Mengaktifkan AKTIF titik akhir layanan jaringan virtual ke Azure Database for MySQL menggunakan tag layanan Microsoft.Sql juga memungkinkan titik akhir untuk semua layanan Azure Database: Azure Database for MySQL, Azure Database for PostgreSQL, Azure SQL Database dan Azure Synapse Analytics.

  • Dukungan untuk titik akhir layanan VNet hanya untuk server Tujuan Umum dan Memori yang Dioptimalkan.

  • Jika Microsoft.Sql diaktifkan dalam subnet, itu menunjukkan bahwa Anda hanya ingin menggunakan aturan VNet untuk menyambungkan. Aturan firewall non-VNet dari sumber daya dalam subnet tersebut tidak akan berfungsi.

  • Pada firewall, rentang alamat IP memang berlaku untuk item jaringan berikut ini, tetapi aturan jaringan virtual tidak berlaku:

ExpressRoute

Jika jaringan Anda tersambung ke jaringan Azure melalui penggunaan ExpressRoute, setiap sirkuit dikonfigurasi dengan dua alamat IP publik di Microsoft Edge. Dua alamat IP tersebut digunakan untuk tersambung dengan Layanan Microsoft, seperti ke Azure Storage, dengan menggunakan Azure Public Peering.

Untuk mengizinkan komunikasi dari sirkuit Anda ke Azure Database for MySQL, Anda harus membuat aturan jaringan IP untuk alamat IP publik pada sirkuit Anda. Untuk menemukan alamat IP publik sirkuit ExpressRoute Anda, buka tiket dukungan dengan ExpressRoute menggunakan portal Microsoft Azure.

Menambahkan aturan Firewall VNET ke server Anda tanpa mengaktifkan Titik Akhir Layanan VNET

Hanya mengatur aturan firewall VNet tidak membantu mengamankan server ke VNet. Anda juga harus mengaktifkan titik akhir layanan VNet agar keamanan berlaku. Saat Anda mengaktifkan titik akhir layanan, subnet VNet Anda mengalami waktu henti hingga ia menyelesaikan transisi dari Nonaktif ke Aktif. Ini berlaku terutama dalam konteks VNet besar. Anda dapat menggunakan bendera IgnoreMissingServiceEndpoint untuk mengurangi atau menghilangkan waktu henti selama transisi.

Anda dapat mengatur bendera IgnoreMissingServiceEndpoint dengan menggunakan Azure CLI atau portal.

Langkah berikutnya

Untuk artikel tentang pembuatan aturan VNet, lihat: