Mengonfigurasi rotasi otomatis kunci kriptografi di Azure Key Vault
Gambaran Umum
Rotasi kunci kriptografi otomatis di Key Vault memungkinkan pengguna mengonfigurasi Key Vault untuk menghasilkan versi kunci baru secara otomatis pada frekuensi yang ditentukan. Untuk mengonfigurasi rotasi, Anda dapat menggunakan kebijakan rotasi kunci, yang dapat ditentukan pada masing-masing kunci.
Sebaiknya Anda merotasi kunci enkripsi setidaknya setiap dua tahun untuk memenuhi praktik terbaik kriptografi.
Untuk mengetahui informasi selengkapnya mengenai bagaimana objek dalam Key Vault diberi nomor versi, lihat Objek, pengidentifikasi, dan penerapan versi Key Vault.
Integrasi dengan layanan Azure
Fitur ini memungkinkan rotasi tanpa sentuhan ujung ke ujung untuk enkripsi saat tidak aktif untuk layanan Azure dengan kunci yang dikelola pelanggan (CMK) yang disimpan di Azure Key Vault. Lihat dokumentasi layanan Azure tertentu untuk mengetahui apakah layanan mencakup rotasi ujung ke ujung.
Untuk informasi selengkapnya tentang enkripsi data di Azure, lihat:
Harga
Ada biaya tambahan per rotasi kunci terjadwal. Untuk informasi selengkapnya, lihat halaman harga Azure Key Vault
Izin yang diperlukan
Fitur rotasi kunci Key Vault memerlukan izin pengelolaan kunci. Anda dapat menetapkan peran "Petugas Kripto Key Vault" untuk mengelola kebijakan rotasi dan rotasi sesuai permintaan.
Untuk informasi selengkapnya mengenai cara menggunakan model izin RBAC Key Vault dan menetapkan peran Azure, lihat Menggunakan Azure RBAC untuk mengontrol akses ke kunci, sertifikat, dan rahasia
Catatan
Jika menggunakan model izin kebijakan akses, Anda perlu menetapkan izin kunci 'Putar', 'Tetapkan Kebijakan Rotasi', dan 'Dapatkan Kebijakan Rotasi' untuk mengelola kebijakan rotasi pada kunci.
Kebijakan rotasi kunci
Kebijakan rotasi kunci memungkinkan pengguna untuk mengonfigurasi rotasi dan pemberitahuan Event Grid mendekati pemberitahuan kedaluwarsa.
Pengaturan kebijakan rotasi kunci:
- Waktu kedaluwarsa: interval kedaluwarsa kunci. Hal ini digunakan untuk mengatur tanggal kedaluwarsa pada kunci yang baru diputar. Hal ini tidak memengaruhi kunci saat ini.
- Diaktifkan/dinonaktifkan: tandai untuk mengaktifkan atau menonaktifkan rotasi kunci
- Jenis rotasi:
- Secara otomatis memperbarui pada waktu tertentu sebelum kedaluwarsa (default)
- Secara otomatis memperbarui pada waktu tertentu sebelum kedaluwarsa. Hal ini membutuhkan 'Waktu Kedaluwarsa' ditetapkan pada kebijakan rotasi dan 'Tanggal Kedaluwarsa' ditetapkan pada kunci.
- Waktu rotasi: interval rotasi kunci, nilai minimumnya adalah tujuh hari sejak pembuatan dan tujuh hari dari waktu kedaluwarsa
- Waktu pemberitahuan: interval peristiwa kunci yang hampir kedaluwarsa untuk pemberitahuan kisi peristiwa. Hal ini membutuhkan 'Waktu Kedaluwarsa' ditetapkan pada kebijakan rotasi dan 'Tanggal Kedaluwarsa' ditetapkan pada kunci.
Penting
Rotasi kunci menghasilkan versi kunci baru dari kunci yang ada dengan materi kunci baru. Layanan target harus menggunakan uri kunci tanpa versi untuk secara otomatis merefresh ke versi kunci terbaru. Pastikan bahwa solusi enkripsi data Anda menyimpan uri kunci berversi dengan data yang mengarahkan ke materi kunci yang sama untuk membungkus/membongkar seperti yang digunakan untuk operasi enkripsi/membungkus guna menghindari gangguan pada layanan Anda. Semua layanan Azure saat ini mengikuti pola tersebut untuk enkripsi data.
Mengonfigurasi kebijakan rotasi kunci
Konfigurasikan kebijakan rotasi kunci selama pembuatan kunci.
Konfigurasikan kebijakan rotasi pada kunci yang ada.
Azure CLI
Simpan kebijakan rotasi kunci ke file. Contoh kebijakan rotasi kunci:
{
"lifetimeActions": [
{
"trigger": {
"timeAfterCreate": "P18M",
"timeBeforeExpiry": null
},
"action": {
"type": "Rotate"
}
},
{
"trigger": {
"timeBeforeExpiry": "P30D"
},
"action": {
"type": "Notify"
}
}
],
"attributes": {
"expiryTime": "P2Y"
}
}
Atur kebijakan rotasi pada kunci yang meneruskan file yang disimpan sebelumnya menggunakan perintah az keyvault key rotation-policy update Azure CLI.
az keyvault key rotation-policy update --vault-name <vault-name> --name <key-name> --value </path/to/policy.json>
Azure PowerShell
Atur kebijakan rotasi menggunakan cmdlet Azure Powershell Set-AzKeyVaultKeyRotationPolicy.
Set-AzKeyVaultKeyRotationPolicy -VaultName <vault-name> -KeyName <key-name> -ExpiresIn (New-TimeSpan -Days 720) -KeyRotationLifetimeAction @{Action="Rotate";TimeAfterCreate= (New-TimeSpan -Days 540)}
Rotasi sesuai permintaan
Rotasi kunci dapat dipanggil secara manual.
Portal
Klik 'Putar Sekarang' untuk meminta rotasi.
Azure CLI
Gunakan perintah Azure CLI az keyvault key rotate untuk memutar kunci.
az keyvault key rotate --vault-name <vault-name> --name <key-name>
Azure PowerShell
Gunakan cmdlet Azure PowerShell Invoke-AzKeyVaultKeyRotation.
Invoke-AzKeyVaultKeyRotation -VaultName <vault-name> -Name <key-name>
Mengonfigurasi pemberitahuan kunci yang hampir kedaluwarsa
Konfigurasi pemberitahuan kedaluwarsa untuk kunci Event Grid yang hampir kedaluwarsa. Jika rotasi otomatis tidak dapat digunakan, seperti ketika kunci diimpor dari HSM lokal, Anda dapat mengonfigurasi pemberitahuan mendekati kedaluwarsa sebagai pengingat untuk rotasi manual atau sebagai pemicu untuk rotasi otomatis kustom melalui integrasi dengan Event Grid. Anda dapat mengonfigurasi pemberitahuan dengan hari, bulan, dan tahun sebelum kedaluwarsa untuk memicu peristiwa yang hampir kedaluwarsa.
Untuk informasi selengkapnya tentang pemberitahuan Event Grid di Key Vault, lihat Azure Key Vault sebagai sumber Event Grid
Mengonfigurasi rotasi kunci dengan template ARM
Kebijakan rotasi kunci juga dapat dikonfigurasi menggunakan template ARM.
Catatan
Hal ini membutuhkan peran 'Kontributor Key Vault' di Key Vault yang dikonfigurasi dengan Azure RBAC untuk menyebarkan kunci melalui bidang manajemen.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vaultName": {
"type": "String",
"metadata": {
"description": "The name of the key vault to be created."
}
},
"keyName": {
"type": "String",
"metadata": {
"description": "The name of the key to be created."
}
},
"rotatationTimeAfterCreate": {
"defaultValue": "P18M",
"type": "String",
"metadata": {
"description": "Time duration to trigger key rotation. i.e. P30D, P1M, P2Y"
}
},
"expiryTime": {
"defaultValue": "P2Y",
"type": "String",
"metadata": {
"description": "The expiry time for new key version. i.e. P90D, P2M, P3Y"
}
},
"notifyTime": {
"defaultValue": "P30D",
"type": "String",
"metadata": {
"description": "Near expiry Event Grid notification. i.e. P30D"
}
}
},
"resources": [
{
"type": "Microsoft.KeyVault/vaults/keys",
"apiVersion": "2021-06-01-preview",
"name": "[concat(parameters('vaultName'), '/', parameters('keyName'))]",
"location": "[resourceGroup().location]",
"properties": {
"vaultName": "[parameters('vaultName')]",
"kty": "RSA",
"rotationPolicy": {
"lifetimeActions": [
{
"trigger": {
"timeAfterCreate": "[parameters('rotatationTimeAfterCreate')]",
"timeBeforeExpiry": ""
},
"action": {
"type": "Rotate"
}
},
{
"trigger": {
"timeBeforeExpiry": "[parameters('notifyTime')]"
},
"action": {
"type": "Notify"
}
}
],
"attributes": {
"expiryTime": "[parameters('expiryTime')]"
}
}
}
}
]
}
Mengonfigurasi tata kelola kebijakan rotasi kunci
Dengan menggunakan layanan Azure Policy, Anda dapat mengatur siklus hidup utama dan memastikan bahwa semua kunci dikonfigurasi untuk diputar dalam jumlah hari tertentu.
Membuat dan menetapkan definisi kebijakan
- Buka Sumber daya kebijakan
- Pilih Penugasan di bawah Penulisan di sisi kiri halaman Azure Policy.
- Pilih Tetapkan kebijakan di bagian atas halaman. Tombol ini terbuka ke halaman Penetapan kebijakan.
- Masukkan informasi berikut:
- Tentukan cakupan kebijakan dengan memilih grup langganan dan sumber daya tempat kebijakan akan diberlakukan. Pilih dengan mengklik tombol tiga titik di bidang Cakupan .
- Pilih nama definisi kebijakan: "Kunci harus memiliki kebijakan rotasi yang memastikan bahwa rotasinya dijadwalkan dalam jumlah hari yang ditentukan setelah pembuatan. "
- Buka tab Parameter di bagian atas halaman.
- Atur Hari maksimum untuk memutar parameter ke jumlah hari yang diinginkan misalnya, 730.
- Tentukan efek kebijakan yang diinginkan (Audit, atau Dinonaktifkan).
- Isi bidang tambahan apa pun. Navigasikan tab yang mengklik tombol Sebelumnya dan Berikutnya di bagian bawah halaman.
- Pilih Tinjau + buat
- Pilih Buat
Setelah kebijakan bawaan ditetapkan, diperlukan waktu hingga 24 jam untuk menyelesaikan pemindaian. Setelah pemindaian selesai, Anda dapat melihat hasil kepatuhan seperti di bawah ini.