Apakah DynamoDB dienkripsi?
Ya. Semua data DynamoDB dienkripsi saat disimpan secara default, memakai key enkripsi yang tersimpan di AWS Key Management Service (KMS), dan enkripsinya tidak bisa dimatikan. Anda memilih tipe key-nya — AWS owned key (default, gratis), AWS managed key, atau customer managed key — dan data dalam perjalanan dilindungi dengan HTTPS/TLS.
Apa saja yang dicakup enkripsi saat disimpan
Enkripsi berlaku untuk segala sesuatu yang disimpan tabel terenkripsi pada media durabel: tabelnya sendiri termasuk primary key-nya, local dan global secondary index, streams, global table, dan cadangan. Perhatikan bahwa kalau tabel Anda punya sort key, sebagian sort key yang menandai batas rentang disimpan sebagai teks polos di metadata tabel.
Tiga pilihan key
- AWS owned key — defaultnya. Dimiliki dan dikelola DynamoDB, tanpa biaya tambahan.
- AWS managed key — tersimpan di akun Anda dan dikelola AWS KMS (biaya KMS berlaku).
- Customer managed key — dibuat, dimiliki, dan dirotasi oleh Anda, dengan kendali penuh atas aksesnya (biaya KMS berlaku).
Anda bisa berpindah antar tipe key kapan saja dari konsol, CLI, atau API.
Berapa sebenarnya biaya "biaya KMS berlaku"
AWS menyebut biaya itu ada lalu membiarkan Anda menghitungnya sendiri, jadi orang mengira ada tarif per permintaan pada basis data yang melayani jutaan permintaan. Nyatanya tidak. Dokumentasi enkripsinya spesifik: "DynamoDB doesn't call AWS KMS for every DynamoDB operation. The key is refreshed once every 5 minutes per caller with active traffic."
Itu menyusut menjadi aritmetika yang bisa Anda periksa. Satu caller dengan trafik berkelanjutan menyegarkan 12 kali per jam, jadi sepanjang bulan berdurasi 730 jam:
- Permintaan: 12 × 730 = 8.760 panggilan KMS, pada $0.03 per 10.000 = $0.026.
- Key-nya sendiri: $1/bulan untuk customer managed key, diprorata per jam. AWS managed key tidak membawa biaya key bulanan, hanya biaya permintaannya.
Jadi customer managed key pada tabel yang sibuk berbiaya sekitar $1.03/bulan, dan separuh biaya permintaannya nyaris tak bergerak seiring trafik bertambah. Lima puluh instance aplikasi yang menghantam tabel yang sama berarti 438.000 panggilan, atau $1.31. Seandainya DynamoDB memanggil KMS per operasi, tabel yang melayani 200 juta permintaan sebulan akan menambah $600.
Satu hal lagi yang layak dianggarkan sebelum Anda memilih customer managed key: menonaktifkannya atau menjadwalkannya untuk dihapus membuat tabel masuk ke keadaan Inaccessible, dan kalau DynamoDB tidak bisa menjangkau key itu lebih dari tujuh hari, tabelnya diarsipkan ke cadangan on-demand yang lalu ditagihkan kepada Anda.
Transparan bagi aplikasi Anda
DynamoDB mendekripsi data secara transparan saat Anda membacanya. Anda tidak mengubah kode apa pun untuk bekerja dengan tabel terenkripsi, query berjalan tanpa perubahan, dan latensinya tetap di rentang milidetik satu digit yang sama. Untuk perlindungan ujung ke ujung atas nilai atribut individual sebelum meninggalkan aplikasi Anda, AWS juga menawarkan enkripsi sisi klien lewat AWS Database Encryption SDK.
Pelajari lebih lanjut
Cadangan juga dienkripsi — lihat cara kerjanya di panduan backup & PITR, perkirakan biaya tabel (KMS ditagih terpisah) dengan kalkulator harga, dan unduh DynoTable untuk menjelajahi tabel terenkripsi Anda — dekripsinya ditangani AWS sebelum datanya sampai ke klien mana pun.
Referensi
- DynamoDB encryption at rest — Amazon DynamoDB Developer Guide
- What is Amazon DynamoDB? — Amazon DynamoDB Developer Guide
- What is the AWS Database Encryption SDK? — AWS Database Encryption SDK Developer Guide
- DynamoDB encryption at rest: How it works — Amazon DynamoDB Developer Guide
- AWS Key Management Service pricing — AWS
Terakhir diverifikasi 2026-07-13 terhadap dokumentasi resmi AWS yang ditautkan di atas. Interval penyegaran KMS dan harga yang dipakai di bagian biaya diambil 2026-07-28.