Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Database for MySQL adalah layanan database relasional terkelola penuh yang menyediakan ketersediaan tinggi, pencadangan otomatis, dan hosting database yang kompatibel dengan MySQL yang dapat diskalakan. Mengamankan penyebaran server fleksibel Anda membantu melindungi data sensitif, mengurangi paparan identitas dan jaringan, dan mendukung persyaratan kepatuhan.
Artikel ini memberikan rekomendasi keamanan untuk membantu melindungi penyebaran Azure Database for MySQL Anda.
Rekomendasi keamanan dalam artikel ini menerapkan prinsip-prinsip Zero Trust: "Verifikasi secara eksplisit", "Gunakan akses hak istimewa paling sedikit", dan "Asumsikan pelanggaran". Untuk panduan Zero Trust yang komprehensif, lihat Pusat Panduan Zero Trust.
Keamanan jaringan
Kontrol keamanan jaringan membantu membatasi cara klien mengakses instans flexible server Azure Database for MySQL dan mengurangi paparan terhadap lalu lintas internet publik.
- Menonaktifkan akses jaringan publik untuk server produksi: Nonaktifkan akses publik saat klien dapat terhubung melalui titik akhir privat sehingga hanya jalur konektivitas privat yang dapat menjangkau server fleksibel. Untuk informasi selengkapnya, lihat Private Link untuk Azure Database for MySQL - Flexible Server.
- Gunakan titik akhir privat untuk server akses publik: Gunakan Private Link untuk mengekspos server fleksibel melalui alamat IP privat di jaringan virtual Anda dan batasi akses data ke koneksi titik akhir privat yang disetujui. Untuk informasi selengkapnya, lihat Private Link untuk Azure Database for MySQL - Flexible Server.
- Menyebarkan server akses privat dengan integrasi jaringan virtual: Gunakan integrasi jaringan virtual ketika server fleksibel harus disuntikkan ke subnet yang didelegasikan dan hanya diakses dari jaringan virtual yang sama, jaringan virtual yang di-peering, VPN, atau ExpressRoute. Untuk informasi selengkapnya, lihat Akses Jaringan Privat menggunakan integrasi jaringan virtual untuk Azure Database for MySQL - Server Fleksibel.
- Batasi aturan firewall publik: Gunakan aturan firewall publik hanya untuk skenario yang memerlukan konektivitas publik, hanya izinkan rentang IPv4 tertentu, dan hindari opsi yang mengizinkan akses dari semua layanan Azure karena dapat mengizinkan koneksi dari langganan pelanggan lain. Untuk informasi selengkapnya, lihat Akses Jaringan Publik untuk Azure Database for MySQL - Server Fleksibel.
Pengelolaan identitas dan akses
Kontrol identitas dan akses membantu memusatkan autentikasi, mengurangi paparan kredensial, dan memberlakukan hak istimewa paling sedikit untuk operasi manajemen Azure dan akses database.
- Gunakan autentikasi Microsoft Entra untuk akses database: Mengonfigurasi autentikasi Microsoft Entra untuk server fleksibel Azure Database for MySQL sehingga pengguna dan aplikasi dapat mengautentikasi dengan identitas Microsoft Entra alih-alih hanya mengandalkan kata sandi MySQL. Untuk informasi selengkapnya, lihat autentikasi Microsoft Entra untuk Azure Database for MySQL - Server Fleksibel.
- Gunakan autentikasi khusus Microsoft Entra jika memungkinkan: Nonaktifkan autentikasi asli MySQL setelah Anda memigrasikan pengguna dan aplikasi untuk Microsoft Entra autentikasi untuk mengurangi jalur akses berbasis kata sandi ke server fleksibel. Untuk informasi selengkapnya, lihat autentikasi Microsoft Entra untuk Azure Database for MySQL - Server Fleksibel.
- Gunakan identitas terkelola untuk koneksi aplikasi: Gunakan identitas terkelola atau perwakilan layanan dengan autentikasi Microsoft Entra sehingga aplikasi terhubung ke Azure Database for MySQL dengan token alih-alih kata sandi database yang disematkan. Untuk informasi selengkapnya, lihat autentikasi Microsoft Entra untuk Azure Database for MySQL - Server Fleksibel.
- Tetapkan izin database hak istimewa terkecil: Buat pengguna MySQL khusus atau pengguna database yang dipetakan Microsoft Entra untuk setiap aplikasi atau fungsi administratif, dan hanya berikan izin skema, tabel, dan operasi yang dibutuhkan setiap identitas. Untuk informasi selengkapnya, lihat Membuat pengguna di Azure Database for MySQL.
- Terapkan Akses Bersyarat untuk administrator Azure Database for MySQL: Terapkan kebijakan Akses Bersyarat yang memerlukan autentikasi multifaktor untuk identitas yang dapat mengelola sumber daya server fleksibel melalui alat Azure Resource Manager seperti portal Azure, Azure CLI, dan Azure PowerShell. Untuk informasi lebih lanjut, lihat Require MFA for Azure management.
Perlindungan data
Azure Database for MySQL secara default mengenkripsi data yang disimpan dengan kunci yang dikelola oleh layanan. Kontrol berikut memberi Anda lebih banyak kontrol atas enkripsi, manajemen kunci, dan koneksi klien terenkripsi.
-
Memerlukan koneksi klien terenkripsi: Tetap
require_secure_transportaktifkan sehingga koneksi klien Azure Database for MySQL menggunakan enkripsi TLS dan tidak mengirim lalu lintas database dalam teks yang jelas. Untuk informasi selengkapnya, lihat Keamanan Lapisan Transportasi (TLS) di Azure Database for MySQL. -
Terapkan TLS 1.3 untuk server MySQL 8.0: Atur
tls_versionkeTLS 1.3di server fleksibel Azure Database for MySQL 8.0 setelah Anda mengonfirmasi bahwa aplikasi dan driver klien mendukung TLS 1.3. Untuk informasi selengkapnya, lihat Keamanan Lapisan Transportasi (TLS) di Azure Database for MySQL. - Memvalidasi sertifikat server dari klien: Mengonfigurasi aplikasi klien untuk memvalidasi rantai sertifikat server dan mempercayai hanya otoritas sertifikat akar sehingga rotasi CA perantara rutin atau sertifikat server tidak merusak koneksi yang aman. Untuk informasi selengkapnya, lihat Keamanan Lapisan Transportasi (TLS) di Azure Database for MySQL.
- Gunakan kunci yang dikelola pelanggan untuk kontrol kunci: Gunakan kunci yang dikelola pelanggan yang disimpan di Azure Key Vault atau Azure Key Vault HSM Terkelola saat Anda memerlukan pemisahan tugas, manajemen siklus hidup kunci yang dikontrol pelanggan, atau kontrol kepatuhan lainnya untuk enkripsi data tidak aktif. Untuk informasi selengkapnya, lihat Enkripsi data dengan kunci yang dikelola pelanggan untuk Azure Database for MySQL.
- Lindungi dependensi pada kunci yang dikelola pelanggan: Aktifkan penghapusan sementara dan proteksi pembersihan permanen pada Key Vault atau Managed HSM yang menyimpan kunci yang dikelola pelanggan, tetapkan izin kunci yang diperlukan kepada identitas terkelola yang ditetapkan pengguna milik server, dan pantau akses ke kunci karena hilangnya akses ke kunci dapat membuat Flexible Server tidak dapat diakses. Untuk informasi selengkapnya, lihat Enkripsi data dengan kunci yang dikelola pelanggan untuk Azure Database for MySQL.
Pencatatan dan pemantauan
Kontrol pengelogan dan pemantauan membantu Anda mendeteksi aktivitas database yang mencurigakan, menyelidiki perubahan administratif, dan mempertahankan bukti audit untuk kepatuhan.
-
Aktifkan log audit MySQL: Atur
audit_log_enabledkeON, pilih jenis peristiwa audit yang sesuai dengan persyaratan keamanan dan kepatuhan Anda, dan ambil koneksi, administratif, DDL, dan peristiwa DML untuk penyelidikan. Untuk informasi selengkapnya, lihat Tutorial: Mengonfigurasi log audit dengan menggunakan Azure Database for MySQL - Server Fleksibel. -
Merutekan log audit ke Azure Monitor: Mengonfigurasi pengaturan diagnostik untuk mengirim
MySqlAuditLogskategori log sumber daya ke ruang kerja Log Analytics, hub peristiwa, atau akun penyimpanan sehingga Anda dapat mengkueri peristiwa audit dalamAzureDiagnosticstabel, menyimpan bukti, dan mengintegrasikan peristiwa audit database dengan alur kerja operasi keamanan. Untuk informasi selengkapnya, lihat Tutorial: Mengonfigurasi log audit dengan menggunakan Azure Database for MySQL - Server Fleksibel. - Gunakan buku kerja audit: Gunakan buku kerja audit Azure Monitor bawaan untuk Azure Database for MySQL meninjau tindakan administratif, ringkasan audit, peristiwa koneksi, ringkasan akses tabel, dan kesalahan yang diidentifikasi. Untuk informasi selengkapnya, lihat Tutorial: Mengonfigurasi log audit dengan menggunakan Azure Database for MySQL - Server Fleksibel.
- Mengaktifkan Defender untuk database relasional sumber terbuka: Mengaktifkan Microsoft Defender untuk database relasional sumber terbuka di Microsoft Defender untuk Cloud sehingga Azure Database for MySQL instans server fleksibel dapat menghasilkan pemberitahuan untuk aktivitas database yang anomali atau berpotensi berbahaya. Untuk informasi selengkapnya, lihat Mengaktifkan Defender untuk database relasional sumber terbuka di Azure.
Kepatuhan dan tata kelola
Kontrol kepatuhan dan tata kelola membantu Anda menerapkan konfigurasi aman yang konsisten di seluruh armada server yang fleksibel Azure Database for MySQL dan melindungi sumber daya produksi dari perubahan yang tidak disengaja atau tidak sah.
-
Terapkan pembuatan log diagnostik dengan Azure Policy: Tetapkan definisi Azure Policy bawaan untuk
microsoft.dbformysql/flexibleserverspengaturan diagnostik, seperti kebijakan yang merutekan log ke Log Analytics, Azure Event Hubs, atau Storage, sehingga data audit server yang fleksibel dikumpulkan secara konsisten. Untuk informasi selengkapnya, lihat Definisi kebijakan bawaan Azure Policy. -
Terapkan kunci penghapusan pada server produksi: Tambahkan kunci
CanNotDeleteke resource server fleksibel Azure Database for MySQL produksi untuk mengurangi risiko penghapusan yang tidak disengaja tanpa memengaruhi perubahan operasional normal. Untuk informasi selengkapnya, lihat Mengunci sumber daya Azure Anda untuk melindungi infrastruktur Anda. - Menandai sumber daya database untuk tata kelola: Menerapkan tag seperti beban kerja, lingkungan, klasifikasi data, pemilik, dan pusat biaya untuk Azure Database for MySQL sumber daya server yang fleksibel sehingga penetapan kebijakan, kueri inventaris, dan tinjauan biaya dapat membedakan beban kerja database produksi dan sensitif. Untuk informasi selengkapnya, lihat Gunakan tag untuk mengatur sumber daya Azure dan hierarki manajemen Anda.
Pencadangan dan pemulihan
Kontrol pencadangan dan pemulihan membantu Anda pulih dari penghapusan yang tidak disengaja, kerusakan data, pemadaman regional, dan operasi perubahan berisiko.
- Mengonfigurasi retensi cadangan untuk tujuan pemulihan: Atur Azure Database for MySQL periode retensi cadangan server yang fleksibel antara 1 dan 35 hari berdasarkan persyaratan titik pemulihan beban kerja dan kebutuhan kepatuhan Anda. Untuk informasi selengkapnya, lihat Pencadangan dan pemulihan di Azure Database for MySQL.
- Gunakan cadangan geo-redundan untuk pemulihan regional: Aktifkan penyimpanan cadangan geo-redundan saat Anda memerlukan replikasi cadangan ke wilayah yang dipasangkan dan kemampuan untuk memulihkan secara geografis setelah pemadaman regional. Untuk informasi selengkapnya, lihat Gambaran umum kelangsungan bisnis dengan Azure Database for MySQL - Server Fleksibel.
- Memicu pencadangan sesuai permintaan sebelum perubahan berisiko tinggi: Buat cadangan sesuai permintaan sebelum migrasi skema, perubahan konfigurasi utama, atau operasi pemeliharaan untuk menjaga titik pemulihan terbaru selaras dengan kebijakan penyimpanan cadangan server. Untuk informasi selengkapnya, lihat Memulai pencadangan sesuai permintaan untuk instans Azure Database for MySQL - Flexible Server menggunakan portal Azure.
- Menguji prosedur pemulihan: Memvalidasi prosedur pemulihan titik waktu dan pemulihan geografis untuk beban kerja perwakilan sehingga Anda memahami pengaturan server, tag, aturan jaringan, dan tindakan pasca-pemulihan yang diperlukan selama pemulihan. Untuk informasi selengkapnya, lihat Pencadangan dan pemulihan di Azure Database for MySQL.