Membuat dan mengonfigurasi brankas kunci untuk Azure Disk Encryption

Azure Disk Encryption menggunakan Azure Key Vault untuk mengontrol dan mengelola kunci dan rahasia enkripsi disk. Untuk informasi selengkapnya mengenai brankas kunci, lihat Mulai menggunakan Azure Key Vault dan Amankan brankas kunci Anda.

Membuat dan mengonfigurasi kubah kunci untuk digunakan dengan Azure Disk Encryption melibatkan tiga langkah:

  1. Membuat grup sumber daya, jika diperlukan.
  2. Membuat brankas kunci.
  3. Mengatur kebijakan akses tingkat lanjut brankas kunci.

Anda juga dapat, jika Anda mau, menghasilkan, atau mengimpor kunci enkripsi kunci (KEK).

Memasang alat dan menyambungkan ke Azure

Langkah-langkah dalam artikel ini dapat diselesaikan dengan Azure CLI, modul Azure PowerShell Az, atau portal Microsoft Azure.

Membuat grup sumber daya

Jika Anda sudah memiliki grup sumber daya, Anda dapat melompat ke Membuat brankas kunci.

Grup sumber daya Azure adalah kontainer logis yang menyebarkan dan mengelola sumber daya Azure.

Buat grup sumber daya menggunakan perintah az group create Azure CLI, perintah New-AzResourceGroup Azure PowerShell, atau dari portal Microsoft Azure.

Azure CLI

az group create --name "myResourceGroup" --location eastus

Azure PowerShell

New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"

Membuat brankas kunci

Jika Anda sudah memiliki brankas kunci, Anda dapat melompat ke Menyetel kebijakan akses lanjutan kubah kunci.

Buat brankas kunci menggunakan perintah az keyvault create Azure CLI, perintah New-AzKeyvault Azure PowerShell, portal Microsoft Azure, atau Azure Resource Manager kerangka.

Peringatan

Untuk memastikan bahwa rahasia enkripsi tidak melewati batas wilayah, Anda harus membuat dan menggunakan brankas kunci yang berada di wilayah dan penyewa yang sama dengan VM yang akan dienkripsi.

Setiap Gudang Kunci harus memiliki nama yang unik. Ganti <your-unique-keyvault-name> dengan nama brankas kunci Anda dalam contoh berikut.

Azure CLI

Saat membuat brankas kunci dengan menggunakan Azure CLI, tambahkan bendera "--enabled-for-disk-encryption".

az keyvault create --name "<your-unique-keyvault-name>" --resource-group "myResourceGroup" --location "eastus" --enabled-for-disk-encryption

Azure PowerShell

Saat membuat brankas kunci menggunakan Azure PowerShell, tambahkan bendera "-EnabledForDiskEncryption".

New-AzKeyvault -name "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup" -Location "eastus" -EnabledForDiskEncryption

Templat Resource Manager

Anda juga dapat membuat brankas kunci dengan menggunakan templat Azure Resource Manager.

  1. Pada Template Mulai Cepat Azure, klik Menyebarkan ke Azure.
  2. Pilih langganan, grup sumber daya, lokasi grup sumber daya, nama Gudang Kunci, ID Objek, persyaratan hukum, dan perjanjian, lalu klik Beli.

Tetapkan kebijakan akses lanjutan key vault

Penting

Brankas kunci yang baru dibuat memiliki penghapusan sementara secara default. Jika Anda menggunakan brankas kunci yang sudah ada sebelumnya, Anda harus mengaktifkan penghapusan sementara. Lihat gambaran umum penghapusan sementara Azure Key Vault.

Platform Azure memerlukan akses ke kunci enkripsi atau rahasia di brankas kunci Anda agar tersedia bagi VM untuk mem-boot dan mendekripsi volume.

Jika Anda tidak mengaktifkan brankas kunci untuk enkripsi disk, penyebaran, atau penerapan template pada saat penyusunan (seperti yang ditunjukkan pada langkah sebelumnya), Anda harus memperbarui kebijakan akses lanjutannya.

Azure CLI

Gunakan az keyvault update untuk mengaktifkan enkripsi disk untuk key vault.

  • Aktifkan Key Vault untuk enkripsi disk: Diaktifkan-untuk-disk-enkripsi diperlukan.

    az keyvault update --name "<your-unique-keyvault-name>" --resource-group "MyResourceGroup" --enabled-for-disk-encryption "true"
    
  • Aktifkan Gudang Kunci untuk penerapan, jika diperlukan: Memungkinkan penyedia sumber daya Microsoft.Compute untuk mengambil rahasia dari brankas kunci ini saat brankas kunci ini dirujuk dalam pembuatan sumber daya, misalnya saat membuat komputer virtual.

    az keyvault update --name "<your-unique-keyvault-name>" --resource-group "MyResourceGroup" --enabled-for-deployment "true"
    
  • Aktifkan Key Vault untuk penerapan template, jika diperlukan: Izinkan Resource Manager untuk mengambil rahasia dari vault.

    az keyvault update --name "<your-unique-keyvault-name>" --resource-group "MyResourceGroup" --enabled-for-template-deployment "true"
    

Azure PowerShell

Gunakan cmdlet PowerShell kubah kunci Set-AzKeyVaultAccessPolicy untuk mengaktifkan enkripsi disk untuk brankas kunci.

  • Aktifkan Key Vault untuk enkripsi disk: EnabledForDiskEncryption diperlukan untuk enkripsi Azure Disk.

    Set-AzKeyVaultAccessPolicy -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup" -EnabledForDiskEncryption
    
  • Aktifkan Gudang Kunci untuk penerapan, jika diperlukan: Memungkinkan penyedia sumber daya Microsoft.Compute untuk mengambil rahasia dari brankas kunci ini saat brankas kunci ini dirujuk dalam pembuatan sumber daya, misalnya saat membuat komputer virtual.

     Set-AzKeyVaultAccessPolicy -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup" -EnabledForDeployment
    
  • Aktifkan Key Vault untuk penerapan template, jika diperlukan: Mengaktifkan Azure Resource Manager untuk mendapatkan rahasia dari key vault ini saat key vault ini direferensikan dalam penerapan template.

    Set-AzKeyVaultAccessPolicy -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup" -EnabledForTemplateDeployment
    

Portal Azure

  1. Pilih key vault, lalu buka Kebijakan Akses.

  2. Pada "Aktifkan akses ke", pilih kotak berlabel Azure Disk Encryption untuk enkripsi volume.

  3. Pilih Azure Virtual Machines untuk penyebaran dan/atau Azure Resource Manager untuk penyebaran template, jika perlu.

  4. Klik Simpan.

    Kebijakan akses lanjutan kubah kunci Azure

Azure Disk Encryption dan rotasi otomatis

Meskipun Azure Key Vault sekarang memiliki rotasi otomatis kunci, saat ini fitur tersebut tidak kompatibel dengan Azure Disk Encryption. Secara khusus, Azure Disk Encryption akan terus menggunakan kunci enkripsi asli, bahkan setelah dirotasi secara otomatis.

Memutar kunci enkripsi tidak akan merusak Azure Disk Encryption, tetapi menonaktifkan kunci enkripsi "lama" (dengan kata lain, kunci Azure Disk Encryption masih digunakan).

Siapkan kunci enkripsi kunci (KEK)

Penting

Akun yang berjalan untuk mengaktifkan enkripsi disk melalui brankas kunci harus memiliki izin "pembaca".

Jika Anda ingin menggunakan kunci enkripsi kunci (KEK) untuk lapisan keamanan tambahan untuk kunci enkripsi, tambahkan KEK ke brankas kunci Anda. Saat kunci enkripsi kunci ditentukan, Azure Disk Encryption menggunakan kunci itu untuk membungkus rahasia enkripsi sebelum menulis ke Key Vault.

Anda dapat membuat KEK baru dengan menggunakan perintah Azure CLI az keyvault key create, cmdlet Add-AzKeyVaultKey Azure PowerShell, atau portal Microsoft Azure. Anda harus membuat jenis kunci RSA; Azure Disk Encryption saat ini tidak mendukung penggunaan kunci Elliptic Curve.

Sebagai gantinya, Anda dapat mengimpor KEK dari HSM manajemen kunci lokal Anda. Untuk informasi selengkapnya, lihat Dokumentasi Kunci Vault.

URL KEK brankas kunci Anda harus berversi. Azure memberlakukan pembatasan versi ini. Untuk URL rahasia dan KEK yang valid, lihat contoh berikut:

Azure CLI

Gunakan perintah Azure CLI az keyvault key create untuk membuat KEK baru dan menyimpannya di key vault Anda.

az keyvault key create --name "myKEK" --vault-name "<your-unique-keyvault-name>" --kty RSA --size 4096

Anda dapat mengimpor kunci pribadi dengan menggunakan perintah Azure CLI az keyvault key import:

Dalam kedua kasus tersebut, Anda memberikan nama KEK Anda ke parameter Azure CLI az vm encryption enable --key-encryption-key.

az vm encryption enable -g "MyResourceGroup" --name "myVM" --disk-encryption-keyvault "<your-unique-keyvault-name>" --key-encryption-key "myKEK"

Azure PowerShell

Gunakan cmdlet Add-AzKeyVaultKey Azure PowerShell untuk membuat KEK baru dan menyimpannya di brankas kunci Anda.

Add-AzKeyVaultKey -Name "myKEK" -VaultName "<your-unique-keyvault-name>" -Destination "HSM" -Size 4096

Anda dapat mengimpor kunci pribadi menggunakan perintah Azure PowerShell az keyvault key import.

Dalam kedua kasus tersebut, Anda akan memberikan ID Vault kunci KEK dan URL KEK Anda ke parameter Azure PowerShell Set-AzVMDiskEncryptionExtension -KeyEncryptionKeyVaultId dan -KeyEncryptionKeyUrl. Contoh ini mengasumsikan bahwa Anda menggunakan brankas kunci yang sama untuk kunci enkripsi disk dan KEK.

$KeyVault = Get-AzKeyVault -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup"
$KEK = Get-AzKeyVaultKey -VaultName "<your-unique-keyvault-name>" -Name "myKEK"

Set-AzVMDiskEncryptionExtension -ResourceGroupName MyResourceGroup -VMName "MyVM" -DiskEncryptionKeyVaultUrl $KeyVault.VaultUri -DiskEncryptionKeyVaultId $KeyVault.ResourceId -KeyEncryptionKeyVaultId $KeyVault.ResourceId -KeyEncryptionKeyUrl $KEK.Id -SkipVmBackup -VolumeType All

Langkah berikutnya