Garis besar keamanan untuk Azure Database for MySQL

Garis besar keamanan ini menerapkan panduan dari Azure Security Benchmark versi 1.0 ke Azure Database for MySQL. Azure Security Benchmark memberikan rekomendasi tentang cara mengamankan solusi cloud di Azure. Konten dikelompokkan berdasarkan kontrol keamanan yang ditentukan oleh Azure Security Benchmark dan panduan terkait yang berlaku untuk Azure Database for MySQL.

Anda dapat memantau garis besar keamanan ini dan rekomendasinya menggunakan Pertahanan Microsoft untuk Cloud. Azure Policy definisi akan tercantum di bagian Kepatuhan Terhadap Peraturan di dasbor Pertahanan Microsoft untuk Cloud.

Saat bagian memiliki Definisi Azure Policy yang relevan, bagian tersebut tercantum dalam garis besar ini untuk membantu Anda mengukur kepatuhan terhadap kontrol dan rekomendasi Azure Security Benchmark. Beberapa rekomendasi mungkin memerlukan paket Pertahanan Microsoft berbayar untuk mengaktifkan skenario keamanan tertentu.

Catatan

Kontrol yang tidak berlaku untuk Azure Database for MySQL, atau yang tanggung jawabnya adalah Microsoft, telah dikecualikan. Untuk melihat cara Azure MySQL Database melakukan pemetaan sepenuhnya ke Azure Security Benchmark, lihat file pemetaan garis besar keamanan Azure MySQL Database lengkap.

Keamanan Jaringan

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Keamanan Jaringan.

1.1: Melindungi sumber daya Azure dalam jaringan virtual

Panduan: Mengonfigurasi Private Link untuk Azure Database for MySQL dengan Titik Akhir Privat. Dengan Private Link Anda dapat terhubung ke berbagai layanan PaaS di Azure melalui private endpoint. Azure Private Link pada dasarnya membawa layanan Azure ke dalam Virtual Network (VNet) pribadi Anda. Lalu lintas antara jaringan virtual Anda dan instans MySQL melewati jaringan backbone Microsoft.

Atau, Anda dapat menggunakan Titik Akhir Layanan Virtual Network untuk melindungi dan membatasi akses jaringan ke implementasi 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.

Anda juga dapat mengamankan server Azure Database for MySQL dengan aturan firewall. Firewall server mencegah semua akses ke server database Anda hingga Anda menentukan komputer mana yang memiliki izin. Untuk mengonfigurasi firewall, Anda membuat aturan firewall yang menentukan rentang alamat IP yang dapat diterima. Anda bisa membuat aturan firewall pada tingkat server.

Tanggung Jawab: Pelanggan

Pemantauan Microsoft Defender untuk Cloud: Tolok Ukur Keamanan Azure adalah inisiatif kebijakan default untuk Microsoft Defender untuk Cloud dan merupakan dasar untuk rekomendasi Microsoft Defender untuk Cloud. Definisi Azure Policy yang terkait dengan kontrol ini diaktifkan secara otomatis oleh Microsoft Defender untuk Cloud. Pemberitahuan terkait dengan kontrol ini mungkin memerlukan paket Memerlukan Defender untuk layanan terkait.

Definisi bawaan Azure Policy - Microsoft.DBforMySQL:

Nama
(portal Microsoft Azure)
Deskripsi Efek Versi
(GitHub)
Titik akhir privat harus diaktifkan untuk server MySQL Koneksi titik akhir pribadi menerapkan komunikasi yang aman dengan mengaktifkan konektivitas pribadi ke Azure Database for MySQL. Mengonfigurasi koneksi titik akhir privat untuk memungkinkan akses ke lalu lintas hanya berasal dari jaringan yang diketahui dan mencegah akses dari semua alamat IP lainnya, termasuk di dalam Azure. AuditIfNotExists, Dinonaktifkan 1.0.2

1.2: Memantau dan membuat log konfigurasi dan lalu lintas jaringan virtual, subnet, dan antarmuka jaringan

Panduan: Saat instans Azure Database for MySQL Anda diamankan ke titik akhir privat, Anda dapat menyebarkan komputer virtual di jaringan virtual yang sama. Anda dapat menggunakan kelompok keamanan jaringan (NSG) untuk mengurangi risiko penyelundupan data. Aktifkan log alur NSG dan kirim log ke Azure Storage Account untuk audit lalu lintas. Anda juga dapat mengirim log alur NSG ke Ruang Kerja Log Analytics dan menggunakan Traffic Analytics untuk memberikan wawasan ke arus lalu lintas di cloud Azure Anda. Beberapa keunggulan Analitik Lalu Lintas adalah kemampuan untuk memvisualisasikan aktivitas jaringan dan mengidentifikasi hot spot, mengidentifikasi ancaman keamanan, memahami pola arus lalu lintas, dan menentukan kesalahan konfigurasi jaringan.

Tanggung Jawab: Pelanggan

1.4: Tolak komunikasi dengan alamat IP yang diketahui berbahaya

Panduan: Gunakan Perlindungan Ancaman Tingkat Lanjut untuk Azure Database for MySQL. Perlindungan Ancaman Tingkat Lanjut mendeteksi aktivitas anomali yang menunjukkan upaya tidak biasa dan berpotensi berbahaya yang ingin mengakses atau mengeksploitasi database Anda.

Aktifkan Standar DDoS Protection di Virtual Network yang terkait dengan instans Azure Database for MySQL Anda untuk melindungi dari serangan DDoS. Gunakan Inteligensi Ancaman Terintegrasi Microsoft Defender untuk Cloud untuk menolak komunikasi dengan alamat IP Internet berbahaya atau tidak digunakan yang diketahui.

Tanggung Jawab: Pelanggan

1.5: Merekam paket jaringan

Panduan: Saat instans Azure Database for MySQL Anda diamankan ke titik akhir privat, Anda dapat menyebarkan komputer virtual di jaringan virtual yang sama. Anda selanjutnya dapat mengonfigurasi kelompok keamanan jaringan (NSG) untuk mengurangi risiko penyelundupan data. Aktifkan log alur NSG dan kirim log ke Azure Storage Account untuk audit lalu lintas. Anda juga dapat mengirim log alur NSG ke Ruang Kerja Log Analytics dan menggunakan Traffic Analytics untuk memberikan wawasan ke arus lalu lintas di cloud Azure Anda. Beberapa keunggulan Traffic Analytics adalah kemampuannya untuk memvisualisasikan aktivitas jaringan dan mengidentifikasi hot spot, mengidentifikasi ancaman keamanan, memahami pola alur lalu lintas, dan menentukan kesalahan konfigurasi jaringan.

Tanggung Jawab: Pelanggan

1.6: Menyebarkan sistem deteksi intrusi/pencegahan intrusi berbasis jaringan (IDS/IPS)

Panduan: Gunakan Perlindungan Ancaman Tingkat Lanjut untuk Azure Database for MySQL. Perlindungan Ancaman Tingkat Lanjut mendeteksi aktivitas anomali yang menunjukkan upaya tidak biasa dan berpotensi berbahaya yang ingin mengakses atau mengeksploitasi database Anda.

Tanggung Jawab: Pelanggan

1.8: Memperkecil kompleksitas dan biaya tambahan administrasi tentang aturan keamanan jaringan

Panduan: Untuk sumber daya yang memerlukan akses ke instans Azure Database for MySQL, gunakan Tag Layanan Virtual Network untuk menentukan kontrol akses jaringan pada Kelompok Keamanan Jaringan atau Azure Firewall. Anda dapat menggunakan tag layanan sebagai pengganti alamat IP tertentu saat membuat aturan keamanan. Dengan menentukan nama tag layanan (misalnya, SQL.WestUs) di bidang aturan sumber atau tujuan yang sesuai dari aturan, Anda dapat mengizinkan atau menolak lalu lintas untuk layanan yang sesuai. Microsoft mengelola awalan alamat yang dicakup oleh tag layanan dan secara otomatis memperbarui tag layanan saat alamat berubah.

Catatan: Azure Database for MySQL menggunakan Tag Layanan "Microsoft.Sql".

Tanggung Jawab: Pelanggan

1.9: Mempertahankan konfigurasi keamanan standar untuk perangkat jaringan

Panduan: Tentukan dan terapkan konfigurasi keamanan standar untuk pengaturan jaringan dan sumber daya jaringan yang terkait dengan instans Azure Database for MySQL Anda dengan Azure Policy. Gunakan alias Azure Policy di namespace "Microsoft.DBforMySQL" dan "Microsoft.Network" untuk membuat kebijakan kustom untuk mengaudit atau menerapkan konfigurasi jaringan dari instans Azure MySQL Database Anda. Anda juga dapat menggunakan definisi kebijakan bawaan yang terkait dengan jaringan atau instans Azure Database for MySQL, seperti:

  • Standar DDoS Protection harus diaktifkan

  • Pemberlakuan koneksi SSL harus diaktifkan untuk server database MySQL

Untuk informasi selengkapnya, lihat referensi berikut ini:

Tanggung Jawab: Pelanggan

1.10: Mendokumentasikan aturan konfigurasi lalu lintas

Panduan: Gunakan tag untuk sumber daya yang terkait dengan keamanan jaringan dan alur lalu lintas untuk instans Azure Database for MySQL Anda untuk memberikan metadata dan organisasi logis.

Gunakan salah satu definisi Azure Policy bawaan yang terkait dengan pemberian tag, seperti Perlu tag dan nilainya untuk memastikan semua sumber daya dibuat dengan tag dan untuk memberi tahu Anda tentang sumber daya yang tidak diberi tag yang ada.

Anda dapat menggunakan Azure PowerShell atau Azure CLI untuk mencari atau melakukan tindakan pada sumber daya berdasarkan tag mereka.

Tanggung Jawab: Pelanggan

1.11: Menggunakan alat otomatis untuk memantau konfigurasi sumber daya jaringan dan mendeteksi perubahan

Panduan: Gunakan Log Aktivitas Azure untuk memantau konfigurasi sumber daya jaringan dan mendeteksi perubahan untuk sumber daya jaringan yang terkait dengan instans Azure Database for MySQL. Buat pemberitahuan dalam Azure Monitor yang akan dipicu saat perubahan pada sumber daya jaringan penting terjadi.

Tanggung Jawab: Pelanggan

Pengelogan dan Pemantauan

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Pengelogan dan Pemantauan.

2.2: Mengonfigurasikan pengelolaan log keamanan pusat

Panduan: Aktifkan Pengaturan Diagnostik dan Log Server serta gunakan log untuk menggabungkan data keamanan yang dibuat oleh instans Azure Database for MySQL. Dalam Azure Monitor, gunakan Ruang Kerja Analitik Log untuk mengkueri dan melakukan analitik, dan gunakan Akun Azure Storage untuk penyimpanan jangka panjang/arsip. Selain itu, Anda dapat mengaktifkan dan melakukan onboard data ke Microsoft Sentinel atau SIEM pihak ketiga.

Tanggung Jawab: Pelanggan

2.3: Mengaktifkan pengelogan audit untuk sumber daya Azure

Panduan: Aktifkan Pengaturan Diagnostik pada instans Azure Database for MySQL Anda untuk akses ke log audit, kueri lambat, dan metrik MySQL. Pastikan Anda secara khusus mengaktifkan log Audit MySQL. Log aktivitas, yang tersedia secara otomatis, mencakup sumber kejadian, tanggal, pengguna, tanda waktu, alamat sumber, alamat tujuan, dan elemen berguna lainnya. Anda juga dapat mengaktifkan Pengaturan Diagnostik Log Aktivitas Azure dan mengirim log ke ruang kerja Log Analitik atau Akun Penyimpanan yang sama.

Tanggung Jawab: Pelanggan

2.5: Mengonfigurasi retensi penyimpanan log keamanan

Panduan: Dalam Azure Monitor, untuk ruang kerja Analitik Log yang digunakan untuk menyimpan log Azure Database for MySQL Anda, atur periode retensi sesuai dengan peraturan kepatuhan organisasi Anda. Gunakan Akun Azure Storage untuk penyimpanan jangka panjang/arsip.

Tanggung Jawab: Pelanggan

2.6: Memantau dan meninjau log

Panduan: Analisis dan pantau log dari instans Azure Database for MySQL Anda untuk perilaku anomali. Gunakan Azure Monitor Analitik Log untuk mengulas log dan melakukan kueri pada data log. Selain itu, Anda dapat mengaktifkan dan melakukan onboard data ke Microsoft Sentinel atau SIEM pihak ketiga.

Tanggung Jawab: Pelanggan

2.7: Mengaktifkan pemberitahuan untuk aktivitas anomali

Panduan: Aktifkan Perlindungan Ancaman Tingkat Lanjut untuk Azure Database for MySQL. Perlindungan Ancaman Tingkat Lanjut mendeteksi aktivitas anomali yang menunjukkan upaya tidak biasa dan berpotensi berbahaya yang ingin mengakses atau mengeksploitasi database Anda.

Selain itu, Anda dapat mengaktifkan Log Server dan Pengaturan Diagnostik untuk MySQL serta mengirim log ke ruang kerja Analitik Log. Onboard ruang kerja Log Analytics Anda ke Microsoft Sentinel karena menyediakan solusi respons otomatis orkestrasi keamanan (SOAR). Ini memungkinkan playbook (solusi otomatis) dibuat dan digunakan untuk memulihkan masalah keamanan.

Tanggung Jawab: Pelanggan

Identitas dan Layanan Kontrol Akses

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Identitas dan Kontrol Akses.

3.1: Memelihara inventaris akun administratif

Panduan: Kelola inventaris akun pengguna yang memiliki akses administratif ke sarana manajemen (misalnya, portal Microsoft Azure) dari instans Azure Database for MySQL. Selain itu, kelola inventaris akun administratif yang memiliki akses ke sarana data (dalam database itu sendiri) dari instans Azure Database for MySQL Anda. (Saat membuat server MySQL, Anda memberikan kredensial untuk pengguna administrator. Administrator ini dapat digunakan untuk membuat pengguna MySQL tambahan.)

Azure Database for MySQL tidak mendukung kontrol akses berbasis peran bawaan, tetapi Anda dapat membuat peran kustom berdasarkan opsi penyedia sumber daya tertentu.

Tanggung Jawab: Pelanggan

3.2: Ubah kata sandi default jika berlaku

Panduan: Azure Active Directory (Azure AD) tidak memiliki konsep kata sandi default.

Setelah membuat sumber daya Azure Database for MySQL sendiri, Azure memaksa pembuatan pengguna administratif dengan kata sandi yang kuat. Namun, setelah instans MySQL dibuat, Anda dapat menggunakan akun admin server pertama yang Anda buat untuk membuat pengguna tambahan dan memberikan akses administratif kepada mereka. Saat membuat akun ini, pastikan Anda mengonfigurasi kata sandi yang berbeda dan kuat untuk setiap akun.

Tanggung Jawab: Pelanggan

3.3: Gunakan akun administratif khusus

Panduan: Buat prosedur operasi standar seputar penggunaan akun administratif khusus yang memiliki akses ke instans Azure Database for MySQL Anda. Gunakan Manajemen identitas dan akses Microsoft Defender untuk Cloud untuk memantau jumlah akun administratif.

Tanggung Jawab: Pelanggan

3.4: Gunakan sistem masuk tunggal (SSO) Azure Active Directory

Panduan: Masuk ke Azure Database for MySQL didukung menggunakan nama pengguna/kata sandi yang dikonfigurasi langsung dalam database, serta menggunakan identitas Azure Active Directory (Azure AD) dan menggunakan token Microsoft Azure Active Directory untuk terhubung. Saat menggunakan token Microsoft Azure Active Directory, metode berbeda didukung, seperti pengguna Microsoft Azure Active Directory, grup Microsoft Azure Active Directory, atau aplikasi Microsoft Azure Active Directory yang menyambungkan ke database.

Secara terpisah, akses sarana kontrol untuk MySQL tersedia melalui REST API dan mendukung SSO. Untuk mengautentikasi, atur header Otorisasi untuk permintaan Anda ke JSON Web Token yang Anda peroleh dari Microsoft Azure Active Directory.

Tanggung Jawab: Pelanggan

3.5: Menggunakan autentikasi multifaktor untuk semua akses berbasis Azure Active Directory

Panduan: Mengaktifkan autentikasi multifaktor Azure Active Directory (Azure AD) dan ikuti rekomendasi Manajemen Akses dan Identitas Microsoft Defender untuk Cloud. Saat menggunakan token Microsoft Azure Active Directory untuk masuk ke database Anda, Anda mungkin memerlukan autentikasi multifaktor untuk masuk database.

Tanggung Jawab: Pelanggan

3.6: Menggunakan stasiun kerja yang aman dan dikelola Azure untuk tugas administratif

Panduan: Gunakan stasiun kerja akses istimewa (PAW) dengan autentikasi multifaktor yang dikonfigurasi untuk masuk dan mengonfigurasi sumber daya Azure.

Tanggung Jawab: Pelanggan

3.7: Mencatat dan memberitahu aktivitas mencurigakan dari akun administratif

Panduan: Aktifkan Perlindungan Ancaman Tingkat Lanjut untuk Azure Database for MySQL untuk menghasilkan peringatan jika ada aktivitas yang mencurigakan.

Selain itu, Anda dapat menggunakan Azure Active Directory (Azure AD) Privileged Identity Management (PIM) untuk pembuatan log dan pemberitahuan saat aktivitas mencurigakan atau tidak aman terjadi di lingkungan.

Gunakan Microsoft Azure Active Directory Risk Detection untuk melihat pemberitahuan dan laporan tentang perilaku pengguna yang berisiko.

Tanggung Jawab: Pelanggan

3.8: Mengelola sumber daya Azure hanya dari lokasi yang disetujui

Panduan: Gunakan Lokasi Bernama Akses Bersyarat untuk mengizinkan akses Portal dan Azure Resource Manager hanya dari pengelompokan logis tertentu dari rentang alamat IP atau negara/wilayah.

Tanggung Jawab: Pelanggan

3.9: Menggunakan Azure Active Directory

Panduan: Gunakan Azure Active Directory (Azure AD) sebagai sistem autentikasi dan otorisasi pusat. Azure Active Directory melindungi data dengan menggunakan enkripsi yang kuat untuk data tidak aktif dan dalam transit. Azure Active Directory juga melakukan salt, hash, dan menyimpan kredensial pengguna dengan aman.

Untuk masuk ke Azure Database for MySQL, sebaiknya gunakan Microsoft Azure Active Directory dan gunakan token Microsoft Azure Active Directory untuk menyambungkan. Saat menggunakan token Microsoft Azure Active Directory, metode berbeda didukung, seperti pengguna Microsoft Azure Active Directory, grup Microsoft Azure Active Directory, atau aplikasi Microsoft Azure Active Directory yang menyambungkan ke database.

Kredensial Microsoft Azure Active Directory juga dapat digunakan untuk administrasi di tingkat sarana manajemen (misalnya, portal Microsoft Azure) untuk mengontrol akun admin MySQL.

Tanggung Jawab: Pelanggan

3.10: Meninjau dan mencocokkan akses pengguna secara teratur

Panduan: Tinjau log Azure Active Directory (Azure AD) untuk membantu menemukan akun kedaluwarsa yang dapat menyertakan log tersebut dengan peran administratif Azure Database for MySQL. Selain itu, gunakan Ulasan Akses Identitas Azure untuk secara efisien mengelola keanggotaan grup, mengakses aplikasi perusahaan yang dapat digunakan untuk mengakses Azure Database for MySQL, dan penetapan peran. Akses pengguna dapat diulas secara berkala seperti setiap 90 hari untuk memastikan hanya Pengguna yang tepat yang memiliki akses berkelanjutan.

Tanggung Jawab: Pelanggan

3.11: Mengawasi percobaan untuk mengakses kredensial yang dinonaktifkan

Panduan: Aktifkan Pengaturan Diagnostik untuk Azure Database for MySQL dan Azure Active Directory (Azure AD), yang mengirim semua log ke ruang kerja Analitik Log. Konfigurasikan pemberitahuan yang diinginkan (seperti upaya autentikasi yang gagal) dalam Analitik Log.

Tanggung Jawab: Pelanggan

3.12: Pemberitahuan pada penyimpangan perilaku masuk akun

Panduan: Aktifkan Perlindungan Ancaman Tingkat Lanjut untuk Azure Database for MySQL untuk menghasilkan peringatan jika ada aktivitas yang mencurigakan.

Gunakan fitur Perlindungan Identitas dan deteksi risiko Azure Active Directory (Azure AD) untuk mengonfigurasi respons otomatis terhadap tindakan mencurigakan yang terdeteksi. Anda dapat mengaktifkan respons otomatis melalui Microsoft Sentinel untuk menerapkan respons keamanan organisasi Anda.

Anda juga dapat menyerap log ke Microsoft Sentinel untuk penyelidikan lebih lanjut.

Tanggung Jawab: Pelanggan

Perlindungan Data

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Perlindungan Data.

4.1: Mempertahankan inventaris Informasi yang sensitif

Panduan: Gunakan tag untuk membantu melacak Azure Database for MySQL atau sumber daya terkait yang menyimpan atau memproses informasi sensitif.

Tanggung Jawab: Pelanggan

4.2: Memisahkan sistem yang menyimpan atau memproses informasi sensitif

Panduan: Implementasikan langganan terpisah dan/atau grup manajemen untuk pengembangan, pengujian, dan produksi. Gunakan kombinasi Private Link, Titik Akhir Layanan, dan/atau aturan firewall untuk mengisolasi dan membatasi akses jaringan ke instans Azure Database for MySQL Anda.

Tanggung Jawab: Pelanggan

4.3: Memantau dan memblokir transfer informasi sensitif yang tidak sah

Panduan: Saat menggunakan komputer virtual Azure untuk mengakses instans Azure Database for MySQL, manfaatkan Private Link, konfigurasi jaringan MySQL, kelompok keamanan jaringan, dan tag layanan untuk mengurangi kemungkinan penyelundupan data.

Microsoft mengelola infrastruktur yang mendasari untuk Azure Database for MySQL dan sudah menerapkan kontrol ketat untuk mencegah kehilangan atau pemaparan data pelanggan.

Tanggung Jawab: Pelanggan

4.4: Mengenkripsi semua informasi sensitif saat transit

Panduan: Azure Database for MySQL mendukung koneksi server MySQL Anda ke aplikasi klien menggunakan Secure Sockets Layer (SSL). Menerapkan koneksi SSL antara server database dan aplikasi klien Anda membantu melindungi dari serangan "man in the middle" dengan mengenkripsi aliran data antara server dan aplikasi Anda. Di portal Microsoft Azure, pastikan "Terapkan koneksi SSL" diaktifkan untuk semua instans Azure Database for MySQL Anda secara default.

Saat ini versi TLS yang didukung untuk Azure Database for MySQL adalah TLS 1.0, TLS 1.1, TLS 1.2.

Tanggung Jawab: Bersama

Pemantauan Microsoft Defender untuk Cloud: Tolok Ukur Keamanan Azure adalah inisiatif kebijakan default untuk Microsoft Defender untuk Cloud dan merupakan dasar untuk rekomendasi Microsoft Defender untuk Cloud. Definisi Azure Policy yang terkait dengan kontrol ini diaktifkan secara otomatis oleh Microsoft Defender untuk Cloud. Pemberitahuan terkait dengan kontrol ini mungkin memerlukan paket Memerlukan Defender untuk layanan terkait.

Definisi bawaan Azure Policy - Microsoft.DBforMySQL:

Nama
(portal Microsoft Azure)
Deskripsi Efek Versi
(GitHub)
Terapkan koneksi SSL harus diaktifkan untuk server database MySQL Azure Database for MySQL mendukung koneksi server Azure Database for MySQL Anda ke aplikasi klien menggunakan Secure Sockets Layer (SSL). Menerapkan koneksi SSL antara server database Anda dan aplikasi klien Anda membantu melindungi dari serangan 'man in the middle' dengan mengenkripsi aliran data antara server dan aplikasi Anda. Konfigurasi ini memberlakukan bahwa SSL selalu diaktifkan untuk mengakses server database Anda. Audit, Dinonaktifkan 1.0.1

4.5: Menggunakan alat penemuan aktif untuk mengidentifikasi data sensitif

Panduan: Fitur identifikasi, klasifikasi, dan pencegahan kehilangan data belum tersedia untuk Azure Database for MySQL. Implementasikan solusi pihak ketiga jika diperlukan untuk tujuan kepatuhan.

Untuk platform yang mendasarinya yang dikelola oleh Microsoft, Microsoft memperlakukan semua konten pelanggan sebagai hal yang sensitif dan berusaha keras untuk melindungi pelanggan dari kehilangan dan paparan data. Untuk memastikan keamanan data pelanggan dalam Azure, Microsoft telah menerapkan dan memelihara serangkaian kontrol dan kemampuan perlindungan data yang kuat.

Tanggung Jawab: Bersama

4.6: Gunakan Azure RBAC untuk mengontrol akses ke sumber daya

Panduan: Gunakan kontrol akses berbasis peran Azure (Azure RBAC) untuk mengontrol akses ke sarana kontrol Azure Database for MySQL (misalnya, portal Microsoft Azure). Untuk akses sarana data (dalam database itu sendiri), gunakan kueri SQL untuk membuat pengguna dan mengonfigurasi izin pengguna. Azure RBAC tidak memengaruhi izin pengguna dalam database.

Tanggung Jawab: Pelanggan

4.9: Mencatat dan memberitahu tentang perubahan pada sumber daya Azure yang penting

Panduan: Gunakan Azure Monitor dengan Log Aktivitas Azure untuk membuat pemberitahuan saat perubahan terjadi pada instans produksi Azure Database for MySQL dan sumber daya penting atau terkait lainnya.

Tanggung Jawab: Pelanggan

Manajemen Kerentanan

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Pengelolaan Kerentanan.

5.1: Menjalankan alat pemindaian kerentanan otomatis

Panduan: Ikuti rekomendasi dari Microsoft Defender untuk Cloud untuk mengamankan Azure MySQL Database dan sumber daya terkait.

Microsoft melakukan manajemen kerentanan pada sistem dasar yang mendukung Azure Database for MySQL.

Tanggung Jawab: Dibagikan

Manajemen Inventaris dan Aset

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Manajemen Inventaris dan Aset.

6.1: Menggunakan solusi penemuan aset otomatis

Panduan: Gunakan Azure Resource Graph untuk mengkueri dan menemukan semua sumber daya (termasuk instans Azure Database for MySQL) dalam langganan Anda. Pastikan Anda memiliki izin (baca) yang sesuai dalam penyewa dan dapat menghitung semua langganan Azure serta sumber daya dalam langganan Anda.

Tanggung Jawab: Pelanggan

6.2: Memelihara metadata aset

Panduan: Menerapkan tag ke Azure Database for MySQL dan sumber daya terkait lainnya yang memberikan metadata untuk secara logis mengaturnya ke dalam taksonomi.

Tanggung Jawab: Pelanggan

6.3: Menghapus sumber daya Azure yang tidak sah

Panduan: Gunakan pemberian tag, grup manajemen, dan langganan terpisah, jika sesuai, untuk mengatur dan melacak instans Azure Database for MySQL dan sumber daya terkait. Sesuaikan inventaris secara teratur dan pastikan sumber daya yang tidak sah dihapus dari langganan tepat waktu.

Tanggung Jawab: Pelanggan

6.4: Menentukan dan memelihara inventaris sumber daya Azure yang disetujui

Panduan: Tidak berlaku; rekomendasi ini ditujukan untuk sumber daya komputasi dan Azure secara keseluruhan.

Tanggung Jawab: Pelanggan

6.5: Memantau sumber daya Azure yang tidak disetujui

Panduan: Gunakan Azure Policy untuk memberikan batasan pada jenis sumber daya yang dapat dibuat dalam langganan pelanggan menggunakan definisi kebijakan bawaan berikut ini:

  • Jenis sumber daya yang tidak diizinkan

  • Jenis sumber daya yang diizinkan

Sebagai tambahan, gunakan Azure Resource Graph untuk mengueri dan menemukan sumber daya dalam langganan.

Tanggung Jawab: Pelanggan

6.9: Hanya gunakan layanan Azure yang disetujui

Panduan: Gunakan Azure Policy untuk memberikan batasan pada jenis sumber daya yang dapat dibuat dalam langganan pelanggan menggunakan definisi kebijakan bawaan berikut ini:

  • Jenis sumber daya yang tidak diizinkan
  • Jenis sumber daya yang diizinkan

Untuk informasi selengkapnya, lihat referensi berikut ini:

Tanggung Jawab: Pelanggan

6.11: Membatasi kemampuan pengguna untuk berinteraksi dengan Azure Resource Manager

Panduan: Gunakan Akses Bersyarat Azure untuk membatasi kemampuan pengguna untuk berinteraksi dengan Azure Resource Manager dengan cara mengonfigurasi "Akses blok" untuk Aplikasi "Microsoft Azure Management". Fitur ini dapat mencegah pembuatan dan perubahan pada sumber daya dalam lingkungan keamanan tinggi, seperti instans Azure Database for MySQL yang berisi informasi sensitif.

Tanggung Jawab: Pelanggan

Konfigurasi Aman

Untuk mengetahui informasi lebih lanjut, lihat Azure Security Benchmark: Konfigurasi Aman.

7.1: Menetapkan konfigurasi aman untuk semua sumber daya Azure

Panduan: Tentukan dan terapkan konfigurasi keamanan standar untuk instans Azure Database for MySQL dengan Azure Policy. Gunakan alias Azure Policy di namespace Microsoft.DBforMySQL untuk membuat kebijakan kustom untuk mengaudit atau menerapkan konfigurasi jaringan dari instans Azure Database for MySQL Anda. Anda juga dapat menggunakan definisi kebijakan bawaan yang terkait dengan instans Azure Database for MySQL, seperti:

Pemberlakuan koneksi SSL harus diaktifkan untuk server database MySQL

Tanggung Jawab: Pelanggan

7.3: Mempertahankan konfigurasi sumber daya Azure yang aman

Panduan: Gunakan Azure Policy [tolak] dan [sebarkan jika tidak ada] untuk menerapkan pengaturan yang aman di seluruh sumber daya Azure Anda.

Tanggung Jawab: Pelanggan

7.5: Menyimpan konfigurasi sumber daya Azure dengan aman

Panduan: Jika menggunakan definisi Azure Policy kustom untuk instans Azure Database for MySQL atau sumber daya terkait Anda, gunakan Repositori Azure untuk menyimpan dan mengelola kode Anda dengan aman.

Tanggung Jawab: Pelanggan

7.7: Menyebarkan alat manajemen konfigurasi untuk sumber daya Azure

Panduan: Gunakan alias Azure Policy di namespace "Microsoft.DBforMySQL" untuk membuat kebijakan kustom untuk memberi tahu, mengaudit, dan menerapkan konfigurasi sistem. Selain itu, kembangkan proses dan alur untuk mengelola pengecualian kebijakan.

Tanggung Jawab: Pelanggan

7.9: Implementasikan pemantauan konfigurasi otomatis untuk sumber daya Azure

Panduan: Gunakan alias Azure Policy di namespace Microsoft.DBforMySQL untuk membuat kebijakan kustom untuk memberi tahu, mengaudit, dan menerapkan konfigurasi sistem. Gunakan [audit], [tolak], dan [sebarkan jika tidak ada] Azure Policy untuk secara otomatis menerapkan konfigurasi untuk instans Azure Database for MySQL Anda dan sumber daya terkait.

Tanggung Jawab: Pelanggan

7.11: Mengelola rahasia Azure dengan aman

Panduan: Untuk Azure Virtual Machines atau aplikasi web yang berjalan di Azure App Service yang digunakan untuk mengakses instans Azure Database for MySQL Anda, gunakan Identitas Layanan Terkelola bersama dengan Azure Key Vault untuk menyederhanakan dan mengamankan manajemen Azure Database for MySQL. Pastikan Penghapusan Sementara Key Vault diaktifkan.

Tanggung Jawab: Pelanggan

7.12: Mengelola identitas dengan aman dan otomatis

Panduan: Instans Azure Database for MySQL mendukung autentikasi Azure Active Directory (Azure AD) untuk mengakses database. Saat membuat instans Azure Database for MySQL, Anda menyediakan informasi masuk untuk peran administrator. Administrator ini dapat digunakan untuk membuat pengguna database tambahan.

Untuk Azure Virtual Machines atau aplikasi web yang berjalan di Azure App Service yang digunakan untuk mengakses instans Azure Database for MySQL Anda, gunakan Identitas Layanan Terkelola bersama dengan Azure Key Vault untuk menyimpan dan mengambil instans Azure Database for MySQL. Pastikan Penghapusan Sementara Key Vault diaktifkan.

Gunakan Identitas Terkelola untuk menyediakan layanan Azure dengan identitas yang dikelola secara otomatis di Microsoft Azure Active Directory. Identitas Terkelola memungkinkan Anda mengautentikasi ke layanan yang mendukung autentikasi Azure Active Directory, termasuk Key Vault tanpa memerlukan kredensial apa pun dalam kode Anda.

Tanggung Jawab: Pelanggan

7.13: Menghilangkan paparan info masuk yang tidak diinginkan

Panduan: Terapkan Pemindai Informasi masuk untuk mengidentifikasi informasi masuk dalam kode. Pemindai informasi masuk juga akan mendorong pemindahan informasi masuk yang ditemukan ke lokasi yang lebih aman seperti Azure Key Vault.

Tanggung Jawab: Pelanggan

Pertahanan Malware

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Pertahanan Malware.

8.2: Lakukan prapemindaian pada file yang akan diunggah ke sumber daya Azure non-komputasi

Panduan: Anti-malware Microsoft diaktifkan pada host yang mendasarinya yang mendukung layanan Azure (misalnya, Azure Database for MySQL), tetapi tidak berjalan pada konten pelanggan.

Pindai terlebih dulu konten apa pun yang diunggah ke sumber daya Azure non-komputasi, seperti App Service, Data Lake Storage, Blob Storage, Azure Database for MySQL, dll. Microsoft tidak dapat mengakses data Anda dalam instans tersebut.

Tanggung Jawab: Bersama

Pemulihan Data

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Pemulihan Data.

9.1: Memastikan pencadangan otomatis secara teratur

Panduan: Azure MySQL Database melakukan cadangan file data dan log transaksi. Tergantung ukuran penyimpanan maksimum yang didukung, kita melakukan cadangan penuh dan diferensial (server penyimpanan maks 4 TB) atau cadangan rekam jepret (server penyimpanan maks hingga 16 TB). Cadangan ini memungkinkan Anda memulihkan server ke titik waktu apa pun dalam periode retensi cadangan yang dikonfigurasi. Periode retensi cadangan default adalah tujuh hari. Anda dapat mengkonfigurasinya secara opsional hingga 35 hari. Semua cadangan dienkripsi menggunakan enkripsi AES-256 bit.

Tanggung Jawab: Bersama

Pemantauan Microsoft Defender untuk Cloud: Tolok Ukur Keamanan Azure adalah inisiatif kebijakan default untuk Microsoft Defender untuk Cloud dan merupakan dasar untuk rekomendasi Microsoft Defender untuk Cloud. Definisi Azure Policy yang terkait dengan kontrol ini diaktifkan secara otomatis oleh Microsoft Defender untuk Cloud. Pemberitahuan terkait dengan kontrol ini mungkin memerlukan paket Memerlukan Defender untuk layanan terkait.

Definisi bawaan Azure Policy - Microsoft.DBforMySQL:

Nama
(portal Microsoft Azure)
Deskripsi Efek Versi
(GitHub)
Cadangan geo-redundan harus diaktifkan untuk Azure Database for MySQL Azure Database for MySQL memungkinkan Anda memilih opsi redundansi untuk server database Anda. Ini dapat diatur ke penyimpanan cadangan geo-redundan di mana data tidak hanya disimpan dalam wilayah di mana server Anda di-host, tetapi juga direplikasi ke wilayah berpasangan untuk memberikan opsi pemulihan jika terjadi kegagalan wilayah. Mengonfigurasi penyimpanan geo-redundan untuk pencadangan hanya diperbolehkan selama pembuatan server. Audit, Dinonaktifkan 1.0.1

9.2: Melakukan pencadangan sistem lengkap dan cadangkan kunci yang dikelola pelanggan

Panduan: Azure Database for MySQL secara otomatis membuat cadangan server dan menyimpannya di penyimpanan redundan secara lokal atau geo-redundan, sesuai dengan pilihan pengguna. Cadangan dapat digunakan untuk memulihkan server Anda ke titik waktu. Cadangan dan pemulihan adalah bagian penting dari strategi kelangsungan bisnis apa pun karena melindungi data Anda dari kerusakan atau penghapusan yang tidak disengaja.

Jika menggunakan Azure Key Vault untuk menyimpan informasi masuk untuk instans Azure Database for MySQL Anda, pastikan cadangan otomatis reguler kunci Anda.

Tanggung Jawab: Bersama

Pemantauan Microsoft Defender untuk Cloud: Tolok Ukur Keamanan Azure adalah inisiatif kebijakan default untuk Microsoft Defender untuk Cloud dan merupakan dasar untuk rekomendasi Microsoft Defender untuk Cloud. Definisi Azure Policy yang terkait dengan kontrol ini diaktifkan secara otomatis oleh Microsoft Defender untuk Cloud. Pemberitahuan terkait dengan kontrol ini mungkin memerlukan paket Memerlukan Defender untuk layanan terkait.

Definisi bawaan Azure Policy - Microsoft.DBforMySQL:

Nama
(portal Microsoft Azure)
Deskripsi Efek Versi
(GitHub)
Cadangan geo-redundan harus diaktifkan untuk Azure Database for MySQL Azure Database for MySQL memungkinkan Anda memilih opsi redundansi untuk server database Anda. Ini dapat diatur ke penyimpanan cadangan geo-redundan di mana data tidak hanya disimpan dalam wilayah di mana server Anda di-host, tetapi juga direplikasi ke wilayah berpasangan untuk memberikan opsi pemulihan jika terjadi kegagalan wilayah. Mengonfigurasi penyimpanan geo-redundan untuk pencadangan hanya diperbolehkan selama pembuatan server. Audit, Dinonaktifkan 1.0.1

9.3: Memvalidasi semua cadangan termasuk kunci yang dikelola pelanggan

Panduan: Di Azure Database for MySQL, melakukan pemulihan membuat server baru dari cadangan server asli. Ada dua jenis pemulihan yang tersedia: Pemulihan titik waktu dan Pemulihan geografis. Pemulihan titik waktu tersedia dengan salah satu opsi redundansi cadangan dan membuat server baru di wilayah yang sama dengan server asli Anda. Pemulihan geografis hanya tersedia jika Anda mengkonfigurasi server Anda untuk penyimpanan redundan geografis dan memungkinkan Anda memulihkan server Anda ke wilayah yang berbeda.

Perkiraan waktu pemulihan tergantung pada beberapa faktor termasuk ukuran database, ukuran log transaksi, bandwidth jaringan, dan jumlah total database yang pulih di wilayah yang sama pada saat yang sama. Waktu pemulihan biasanya kurang dari 12 jam.

Uji pemulihan instans Azure Database for MySQL Anda secara berkala.

Tanggung Jawab: Pelanggan

9.4: Memastikan adanya perlindungan cadangan dan kunci yang dikelola pelanggan

Panduan: Azure MySQL Database melakukan cadangan log penuh, diferensial, dan transaksi. Cadangan ini memungkinkan Anda memulihkan server ke titik waktu tertentu dalam periode retensi cadangan yang dikonfigurasikan. Periode retensi cadangan default adalah tujuh hari. Anda dapat mengkonfigurasinya secara opsional hingga 35 hari. Semua cadangan dienkripsi menggunakan enkripsi AES-256 bit. Pastikan Penghapusan Sementara Key Vault diaktifkan.

Tanggung Jawab: Pelanggan

Respons Insiden

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Respons Insiden.

10.1: Membuat panduan tanggap insiden

Panduan: Buat panduan respons insiden untuk organisasi Anda. Pastikan terdapat rencana respons insiden tertulis yang menentukan semua peran personel serta fase penanganan/manajemen insiden dari deteksi hingga ulasan pasca-insiden.

Tanggung Jawab: Pelanggan

10.2: Membuat prosedur penilaian dan prioritas insiden

Panduan: Microsoft Defender untuk Cloud menetapkan tingkat keparahan untuk setiap pemberitahuan guna membantu Anda memprioritaskan pemberitahuan yang harus diselidiki terlebih dahulu. Tingkat keparahan didasarkan pada seberapa yakin Microsoft Defender untuk Cloud dalam temuan atau analitik yang digunakan untuk menerbitkan peringatan sekaligus tingkat keyakinan bahwa terdapat niat jahat di balik aktivitas yang mengarah pada peringatan tersebut.

Selain itu, tandai langganan dengan jelas (misalnya, produksi, non-produksi) dan buat sistem penamaan untuk mengidentifikasi dan mengategorikan sumber daya Azure dengan jelas.

Tanggung Jawab: Pelanggan

10.3: Menguji prosedur respons keamanan

Panduan: Lakukan latihan untuk menguji kemampuan respons insiden sistem Anda dalam ritme reguler. Identifikasi titik lemah dan celah, lalu revisi rencana sesuai kebutuhan.

Tanggung Jawab: Pelanggan

10.4: Memberikan detail kontak insiden keamanan dan konfigurasi notifikasi peringatan untuk insiden keamanan

Panduan: Informasi kontak insiden keamanan akan digunakan oleh Microsoft untuk menghubungi Anda jika Microsoft Security Response Center (MSRC) mendapati bahwa data pelanggan telah diakses oleh pihak yang melanggar hukum atau tidak berwenang. Tinjau insiden setelah fakta untuk memastikan bahwa masalah terselesaikan.

Tanggung Jawab: Pelanggan

10.5: Menggabungkan pemberitahuan keamanan ke dalam sistem respons insiden Anda

Panduan: Mengekspor pemberitahuan dan rekomendasi Microsoft Defender untuk Cloud Anda menggunakan fitur Ekspor Berkelanjutan. Ekspor Berkelanjutan memungkinkan Anda untuk mengekspor pemberitahuan dan rekomendasi baik secara manual maupun berkelanjutan. Anda dapat menggunakan konektor data Microsoft Defender untuk Cloud guna mengalirkan peringatan ke Microsoft Sentinel.

Tanggung Jawab: Pelanggan

10.6: Mengotomatiskan respons terhadap pemberitahuan keamanan

Panduan: Menggunakan fitur Automasi Alur Kerja di Microsoft Defender untuk Cloud guna memicu respons secara otomatis melalui "Logic Apps" terhadap pemberitahuan dan rekomendasi keamanan.

Tanggung Jawab: Pelanggan

Uji Penetrasi dan Latihan Red Team

Untuk informasi selengkapnya, lihat Azure Security Benchmark: Uji Penetrasi dan Latihan Red Team.

11.1: Melakukan uji penetrasi rutin sumber daya Azure Anda dan memastikan remediasi semua temuan keamanan yang penting

Panduan: Ikuti Aturan Keterlibatan Uji Penetrasi Microsoft Cloud untuk memastikan bahwa uji penetrasi Anda tidak melanggar kebijakan Microsoft. Gunakan strategi Microsoft dan eksekusi Red Team, serta uji penetrasi langsung terhadap infrastruktur, layanan, dan aplikasi cloud yang dikelola Microsoft.

Tanggung Jawab: Bersama

Langkah berikutnya