Key Management Service (KMS) menyediakan fitur rotasi kunci yang memungkinkan Anda memutar kunci secara berkala guna meningkatkan keamanan kunci dan data bisnis Anda. Topik ini menjelaskan cara kerja rotasi kunci serta cara mengonfigurasinya.
Mengapa merotasi kunci?
Mengurangi jumlah data yang dienkripsi oleh satu kunci, sehingga menurunkan risiko serangan kriptanalisis.
Keamanan suatu kunci berbanding terbalik dengan volume data yang dienkripsinya—yaitu total byte data yang dienkripsi oleh kunci tersebut. Dengan memutar kunci secara berkala, permukaan serangan kriptanalisis untuk setiap kunci berkurang, sehingga skema enkripsi secara keseluruhan menjadi lebih aman.
Mempersiapkan respons terhadap insiden keamanan.
Dengan mengintegrasikan rotasi kunci ke dalam desain dan implementasi sistem, praktik ini menjadi bagian rutin dari manajemen keamanan, sehingga memastikan kesiapan sistem jika terjadi insiden keamanan.
Memperpendek jendela waktu di mana kunci dapat dikompromikan.
Jika Anda secara rutin memutar kunci dan mengenkripsi ulang data dengan kunci baru, periode rotasi menjadi jendela waktu di mana penyerang dapat mengompromikan kunci tersebut. Penyerang harus memecahkan kunci sebelum rotasi berikutnya untuk mengakses data, yang merupakan cara praktis melindungi data dari serangan kriptanalisis.
Membantu memenuhi persyaratan kepatuhan.
Rotasi kunci berkala membantu bisnis mematuhi berbagai standar, antara lain:
Payment Card Industry Data Security Standard (PCI DSS).
Standar dari China State Cryptography Administration, seperti GM/T 0051-2016 Cryptographic Device Management - Symmetric Key Management Technical Specification.
Standar dari U.S. National Institute of Standards and Technology (NIST), seperti NIST Special Publication 800-57 Recommendation for Key Management.
Cara kerja rotasi kunci
Satu kunci dapat memiliki beberapa versi yang berbeda secara kriptografis. KMS memutar kunci dengan membuat versi kunci baru dan selalu menggunakan versi terbaru untuk operasi kriptografi. Anda tidak dapat menentukan versi kunci yang digunakan.
Rotasi kunci membuat versi kunci baru. ID kunci, ARN kunci, dan alias tetap tidak berubah.
KMS tidak pernah menghapus versi kunci. Versi kunci hanya dihapus ketika kunci induknya dihapus.
Saat Anda membuat kunci, KMS menghasilkan versi awal dan menetapkannya sebagai versi utama. Saat kunci diputar, KMS membuat versi kunci baru dan menetapkannya sebagai versi utama yang baru. Gambar berikut menunjukkan proses ini.
Jika Anda mengaktifkan rotasi otomatis berkala, Waktu rotasi berikutnya dihitung menggunakan rumus: Waktu rotasi terakhir + Periode rotasi.
Anda dapat memanggil operasi DescribeKey. Bidang
LastRotationDatedalam respons menunjukkan waktu rotasi terakhir, sedangkan bidangNextRotationDatemenunjukkan waktu yang dijadwalkan untuk rotasi berikutnya.Jika suatu kunci dikonfigurasi untuk rotasi otomatis berkala dan Anda melakukan rotasi manual di antara rotasi terjadwal, waktu rotasi manual tersebut menjadi Last rotation time yang baru. Waktu ini kemudian digunakan untuk menghitung Next rotation time.
Lingkup
Jenis dan sumber kunci:
Jenis kunci
Sumber bahan kunci
Rotasi otomatis berkala
Rotasi manual langsung
Software-protected key (simetris)
Dihasilkan oleh KMS
Diimpor dari sumber eksternal (BYOK)
Software-protected key (asimetris)
Dihasilkan oleh KMS, Diimpor dari sumber eksternal (BYOK)
Hardware-protected key (simetris dan asimetris)
Dihasilkan oleh KMS
Diimpor dari sumber eksternal (BYOK)
Status kunci: Kunci harus berada dalam status Enabled.
Jika kunci berada dalam status Disabled atau Pending Deletion, rotasi kunci dijeda. Rotasi dilanjutkan ketika kunci diaktifkan kembali.
Kondisi tambahan untuk kunci tertentu:
Untuk kunci default, Anda harus membeli layanan bernilai tambah rotasi.
Mengatur rotasi untuk kunci default
Penagihan
Kunci default digunakan untuk enkripsi sisi server oleh layanan Alibaba Cloud dan gratis. Namun, rotasi kunci untuk kunci default merupakan layanan bernilai tambah.
Biaya: USD 9 per tahun per wilayah. Setelah pembelian, semua kunci default di wilayah yang ditentukan—termasuk service key dan CMK default—memenuhi syarat untuk rotasi.
Metode dan tanggal rotasi
Hanya rotasi otomatis berkala yang didukung; rotasi manual langsung tidak didukung.
Periode rotasi tetap selama 365 hari dan tidak dapat diubah. Setelah diaktifkan, rotasi pertama terjadi 365 hari setelah versi kunci dibuat, dan rotasi berikutnya terjadi setiap 365 hari.
Layanan bernilai tambah rotasi ditagih setiap tahun. Pastikan langganan Anda aktif saat rotasi berikutnya dijadwalkan; jika tidak, rotasi akan gagal.
Aktifkan rotasi (rotasi otomatis berkala)
Beli layanan bernilai tambah rotasi kunci.
Masuk ke Konsol Key Management Service. Di bilah menu atas, pilih wilayah. Di panel navigasi kiri, pilih .
Pada tab Default Keys, klik Buy Key Rotation dan lengkapi konfigurasi.
Instance Type: Pilih Value-added Plan.
Value-added Plan: Pilih Default Key Rotation.
Region: Pilih wilayah tempat kunci default berada.
Purchase Quantity: Anda hanya perlu membeli satu per wilayah.
Klik Buy Now, baca Terms of Service dengan cermat, lalu klik Pay untuk menyelesaikan pembelian.
Aktifkan rotasi kunci.
Service keys
Tidak diperlukan konfigurasi. KMS secara otomatis mengaktifkan rotasi.
Default CMK
Konsol
Pada tab Default Keys di Keys, klik ID kunci tersebut.
Pada halaman detail, klik tab Key Version, lalu klik Configure Rotation.
Pada kotak dialog Configure Rotation, nyalakan sakelar Rotation Status dan klik OK. Pada halaman detail kunci, Rotation Status berubah menjadi Enabled, dan Rotation Period ditampilkan dalam satuan Days.
Menggunakan kunci berputar
Kunci default hanya dapat digunakan untuk enkripsi sisi server oleh layanan Alibaba Cloud. Setelah rotasi diaktifkan, layanan Alibaba Cloud mengelola rotasi secara otomatis tanpa memerlukan operasi manual. Untuk informasi selengkapnya, lihat Ikhtisar integrasi KMS untuk enkripsi di produk cloud.
Menampilkan detail rotasi
Konsol
Pada tab Default Keys di Keys, temukan service key atau master key yang ingin Anda lihat.
Klik ID kunci tersebut. Pada halaman detail, lihat Rotation Status, Rotation Period, dan Key Version.
Mengatur rotasi untuk kunci di instans KMS
Konsumsi kuota
Rotasi kunci mengonsumsi kuota kunci dari instans KMS. Setiap versi kunci mengonsumsi satu kuota kunci. Misalnya, jika suatu kunci memiliki tiga versi (V1, V2, dan V3), kunci tersebut mengonsumsi tiga kuota kunci. Untuk menambah kuota, lihat Upgrade instans KMS.
Metode dan tanggal rotasi
KMS mendukung rotasi otomatis berkala dan rotasi manual langsung.
Rotasi otomatis berkala: Tetapkan periode rotasi kustom antara 7 hingga 365 hari untuk menghasilkan versi kunci baru secara berkala.
Rotasi manual langsung: Segera menghasilkan versi kunci baru.
Aktifkan rotasi
Aktifkan rotasi otomatis berkala
Konsol
Aktifkan rotasi kunci saat membuat kunci. Untuk informasi selengkapnya, lihat Manage keys.
Pada tab Customer Master Keys di Keys, pilih ID instans, lalu klik Create Key.
Pada panel Create Key, lengkapi konfigurasi. Aktifkan Automatic Rotation, atur Rotation Period, lalu klik OK.
Aktifkan rotasi kunci setelah kunci dibuat.
Pada tab Customer Master Keys di Keys, pilih ID instans, lalu klik ID kunci target.
Pada area Key Version di halaman detail kunci, klik Configure Rotation. Pada kotak dialog Configure Rotation Policy, aktifkan rotasi otomatis berkala, atur periode rotasi, lalu klik OK.
API
Aktifkan rotasi kunci saat membuat kunci.
Panggil operasi CreateKey. Atur parameter EnableAutomaticRotation dan RotationInterval.
Aktifkan rotasi kunci setelah kunci dibuat.
Panggil operasi UpdateRotationPolicy. Atur parameter EnableAutomaticRotation dan RotationInterval.
Rotasi manual langsung
Untuk kunci dengan bahan kunci yang dihasilkan oleh KMS.
Konsol
Pada tab Customer Master Keys di Keys, pilih ID instans, lalu klik ID kunci target.
Pada area Key Version di halaman detail kunci, klik Configure Rotation. Pada kotak dialog Configure Rotation Policy, pilih Rotate Now, lalu klik OK.
API
Panggil operasi CreateKeyVersion.
Untuk kunci BYOK yang menggunakan bahan kunci yang diimpor.
Impor bahan kunci baru.
Masuk ke Konsol Key Management Service. Di bilah menu atas, pilih wilayah. Di panel navigasi kiri, pilih .
Pada tab Keys, pilih ID instans, lalu klik Details di kolom Actions untuk kunci target.
Pada tab Key Material and Version, klik Import New Key Material di pojok kiri atas. Ikuti petunjuk di Import symmetric key material untuk mengimpor bahan kunci tersebut.
Setelah bahan kunci baru diimpor, versi kunci baru dengan status Pending Rotation dihasilkan. Anda dapat melihat versi kunci baru tersebut dalam daftar versi kunci.
PentingAnda tidak dapat mengimpor versi kunci lain hingga versi baru saat ini diputar.
Lakukan rotasi.
Pada kolom Actions untuk versi kunci yang dihasilkan pada Langkah 1, klik Rotate.
Pada kotak dialog Rotate Now, pastikan ID bahan kunci sudah benar, lalu klik OK.
Gunakan kunci yang diputar
Saat kunci digunakan untuk enkripsi sisi server oleh layanan Alibaba Cloud, layanan tersebut secara otomatis mengelola rotasi kunci setelah Anda mengaktifkannya tanpa memerlukan operasi manual. Saat Anda menggunakan kunci untuk enkripsi di aplikasi buatan sendiri, gunakan operasi API berikut untuk operasi kriptografi. Secara default, operasi tersebut menggunakan versi terbaru dari kunci yang diputar.
Menggunakan SDK Alibaba Cloud
SDK Alibaba Cloud memanggil OpenAPI. Untuk melakukan enkripsi dan dekripsi, panggil operasi berikut.
Hasilkan kunci data: GenerateDataKey. Menggunakan versi utama kunci yang ditentukan untuk mengenkripsi kunci data.
Enkripsi: Encrypt. Menggunakan versi utama kunci yang ditentukan untuk mengenkripsi teks biasa.
Dekripsi: Decrypt. Menggunakan versi kunci yang sesuai dengan ciphertext yang diberikan untuk mendekripsi data.
Menggunakan SDK instans KMS (tidak disarankan)
Kami tidak menyarankan pengguna baru menggunakan SDK ini. SDK instans KMS memanggil API instans. Untuk melakukan enkripsi dan dekripsi, panggil operasi berikut.
Hasilkan kunci data: AdvanceGenerateDataKey. KMS menggunakan versi utama kunci yang ditentukan untuk mengenkripsi kunci data.
Enkripsi: AdvanceEncrypt. KMS menggunakan versi utama kunci yang ditentukan untuk mengenkripsi teks biasa.
Dekripsi: AdvanceDecrypt. KMS menggunakan versi kunci yang sesuai dengan ciphertext yang diberikan untuk mendekripsi data.
Jika Anda telah mengaktifkan rotasi otomatis untuk kunci Anda, jangan gunakan operasi API instans lama berikut: Encrypt, Decrypt, atau GenerateDataKey. Operasi-operasi ini menggunakan versi kunci awal untuk enkripsi dan dekripsi serta tidak menggunakan versi kunci baru yang dihasilkan setelah rotasi.
Menampilkan detail rotasi
Konsol
Pada tab Customer Master Keys di Keys, pilih ID instans, lalu klik ID kunci target.
Pada halaman detail, Anda dapat melihat Rotation Status, Rotation Period, dan Key Version.
API
Panggil operasi DescribeKey. Periksa parameter AutomaticRotation dan RotationInterval dalam respons.
Panggil operasi ListKeyVersions. Periksa parameter KeyVersions dalam respons.