Enkripsi data untuk Azure Database for MySQL menggunakan portal Microsoft Azure

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?

Pelajari cara menggunakan portal Microsoft Azure untuk menyiapkan dan mengelola enkripsi data untuk Azure Database for MySQL Anda.

Prasyarat untuk Azure CLI

  • Anda harus memiliki langganan Azure dan menjadi admin pada langganan tersebut.

  • Di Azure Key Vault, buat brankas kunci dan kunci yang akan digunakan untuk kunci yang dikelola pelanggan.

  • Brankas kunci harus memiliki properti berikut untuk digunakan sebagai kunci yang dikelola pelanggan:

    • Penghapusan sementara

      az resource update --id $(az keyvault show --name \ <key_vault_name> -o tsv | awk '{print $1}') --set \ properties.enableSoftDelete=true
      
    • Perlindungan penghapusan menyeluruh

      az keyvault update --name <key_vault_name> --resource-group <resource_group_name>  --enable-purge-protection true
      
    • Jumlah hari retensi diatur ke 90 hari

      az keyvault update --name <key_vault_name> --resource-group <resource_group_name>  --retention-days 90
      
  • Kunci harus memiliki atribut berikut untuk digunakan sebagai kunci yang dikelola pelanggan:

    • Tidak ada tanggal kedaluwarsa
    • Tidak dinonaktifkan
    • Lakukan operasi get, wrap, unwrap
    • atribut recoverylevel diatur ke Dapat dipulihkan (atribut ini memerlukan penghapusan sementara diaktifkan dengan periode retensi yang diatur ke 90 hari)
    • Proteksi pembersihan diaktifkan

    Anda dapat memverifikasi atribut kunci di atas dengan menggunakan perintah berikut:

    az keyvault key show --vault-name <key_vault_name> -n <key_name>
    
  • Azure Database for MySQL - Server Tunggal harus berada pada tingkat harga Tujuan Umum atau Memori yang Dioptimalkan dan penyimpanan tujuan umum v2. Sebelum Anda melangkah lebih jauh, lihat batasan untuk enkripsi data dengan kunci yang dikelola pelanggan.

Mengatur izin yang tepat untuk operasi utama

  1. Di Azure Key Vault, pilih Kebijakan akses>Tambahkan Kebijakan Akses.

    Screenshot of Key Vault, with Access policies and Add Access Policy highlighted

  2. Pilih Izin kunci, dan pilih Dapatkan, Bungkus, Buka bungkus, dan Prinsipal, yaitu nama server MySQL. Jika prinsipal server Anda tidak dapat ditemukan dalam daftar prinsipal yang ada, Anda perlu mendaftarkannya. Anda diminta untuk mendaftarkan prinsipal server ketika Anda mencoba menyiapkan enkripsi data untuk pertama kalinya, dan gagal.

    Access policy overview

  3. Pilih Simpan.

Mengatur enkripsi data untuk Azure Database for MySQL

  1. Di Azure Database for MySQL, pilih Enkripsi data untuk menyiapkan kunci yang dikelola pelanggan.

    Screenshot of Azure Database for MySQL, with Data encryption highlighted

  2. Anda dapat memilih brankas kunci dan pasangan kunci, atau memasukkan pengidentifikasi kunci.

    Screenshot of Azure Database for MySQL, with data encryption options highlighted

  3. Pilih Simpan.

  4. Untuk memastikan semua file (termasuk file sementara) dienkripsi sepenuhnya, hidupkan ulang server.

Menggunakan Enkripsi data untuk memulihkan atau mereplikasi server

Setelah Azure Database for MySQL dienkripsi dengan kunci yang dikelola pelanggan yang disimpan di Azure Key Vault, salinan server yang baru dibuat juga dienkripsi. Anda dapat membuat salinan baru ini melalui operasi lokal atau pemulihan geografis, atau melalui operasi replika (lokal/lintas wilayah). Jadi, untuk server MySQL terenkripsi, Anda dapat menggunakan langkah-langkah berikut untuk membuat server yang dipulihkan terenkripsi.

  1. Di server Anda, pilih Ringkasan>Pulihkan.

    Screenshot of Azure Database for MySQL, with Overview and Restore highlighted

    Atau untuk server berkemampuan replikasi, pada judul Pengaturan, pilih Replikasi.

    Screenshot of Azure Database for MySQL, with Replication highlighted

  2. Setelah operasi pemulihan selesai, server baru yang dibuat dienkripsi dengan kunci server utama. Namun, fitur dan opsi di server dinonaktifkan, dan server tidak dapat diakses. Ini mencegah manipulasi data, karena identitas server baru belum diberi izin untuk mengakses brankas kunci.

    Screenshot of Azure Database for MySQL, with Inaccessible status highlighted

  3. Untuk membuat server dapat diakses, validasi ulang kunci pada server yang dipulihkan. Pilih Enkripsi data>Validasi ulang kunci.

    Catatan

    Upaya pertama untuk memvalidasi ulang akan gagal, karena prinsipal layanan server baru perlu diberi akses ke brankas kunci. Untuk membuat perwakilan layanan, pilih Validasi ulang kunci, yang akan menampilkan kesalahan tetapi membuat perwakilan layanan. Setelah itu, lihat langkah yang tercantum sebelumnya dalam artikel ini.

    Screenshot of Azure Database for MySQL, with revalidation step highlighted

    Anda akan harus memberi akses brankas kunci ke server baru. Untuk informasi selengkapnya, lihat Menetapkan kebijakan akses Key Vault.

  4. Setelah mendaftarkan prinsipal layanan, validasi ulang kembali kunci, dan server melanjutkan fungsi normalnya.

    Screenshot of Azure Database for MySQL, showing restored functionality

Langkah berikutnya