SEC08-BP01 Mengimplementasikan manajemen kunci yang aman - Pilar Keamanan

SEC08-BP01 Mengimplementasikan manajemen kunci yang aman

Manajemen kunci yang aman mencakup penyimpanan, rotasi, kontrol akses, dan pemantauan materi kunci yang diperlukan untuk mengamankan data diam untuk beban kerja Anda.

Hasil yang diinginkan: Mekanisme manajemen kunci yang dapat diskalakan, dapat diulang, dan dapat diotomatiskan. Mekanisme ini harus memberikan kemampuan untuk menerapkan hak akses paling rendah ke materi kunci, memberikan keseimbangan yang tepat antara ketersediaan, kerahasiaan, dan integritas kunci. Akses ke kunci harus dipantau, dan materi kunci dirotasi melalui proses otomatis. Materi kunci tidak boleh diakses oleh identitas manusia.

Antipola umum:

  • Akses manusia ke materi kunci yang tidak terenkripsi.

  • Membuat algoritma kriptografi kustom.

  • Izin yang terlalu luas untuk mengakses materi kunci.

Manfaat menjalankan praktik terbaik ini: Dengan membuat mekanisme manajemen kunci yang aman untuk beban kerja Anda, Anda dapat membantu memberikan perlindungan untuk konten Anda dari akses yang tidak sah. Selain itu, Anda mungkin harus mematuhi persyaratan peraturan untuk mengenkripsi data Anda. Solusi manajemen kunci yang efektif dapat memberikan mekanisme teknis yang selaras dengan peraturan tersebut untuk melindungi materi kunci.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak dijalankan: Tinggi

Panduan implementasi

Banyak persyaratan peraturan dan praktik terbaik yang menyertakan enkripsi data diam sebagai kontrol keamanan mendasar. Untuk mematuhi kontrol ini, beban kerja Anda memerlukan mekanisme untuk menyimpan dan mengelola materi kunci yang digunakan untuk mengenkripsi data diam Anda.

AWS menawarkan AWS Key Management Service (AWS KMS) untuk menyediakan penyimpanan yang tahan lama, aman, dan redundan untuk kunci AWS KMS. Banyak layanan AWS terintegrasi dengan AWS KMS untuk mendukung enkripsi data Anda. AWS KMS menggunakan modul keamanan perangkat keras yang divalidasi FIPS 140-2 Level 3 untuk melindungi kunci Anda. Tidak ada mekanisme untuk mengekspor kunci AWS KMS ke dalam bentuk teks biasa.

Saat men-deploy beban kerja menggunakan strategi multiakun, merupakan salah satu praktik terbaik untuk menyimpan kunci AWS KMS di akun yang sama dengan beban kerja yang menggunakannya. Dalam model terdistribusi ini, tanggung jawab untuk mengelola kunci AWS KMS diemban oleh tim aplikasi. Dalam kasus penggunaan lainnya, organisasi dapat memilih untuk menyimpan kunci AWS KMS ke dalam sebuah akun terpusat. Struktur terpusat ini memerlukan kebijakan tambahan untuk mengaktifkan akses lintas akun yang diperlukan agar akun beban kerja dapat mengakses kunci yang disimpan di akun terpusat tersebut, tetapi mungkin lebih ideal untuk kasus penggunaan di mana satu kunci digunakan bersama-sama di beberapa Akun AWS.

Terlepas dari lokasi penyimpanan materi kunci, akses ke kunci harus dikontrol dengan ketat melalui penggunaan kebijakan kunci dan kebijakan IAM Kebijakan kunci adalah cara utama untuk mengontrol akses ke kunci AWS KMS. Selain itu, pemberian kunci AWS KMS dapat memberikan akses ke layanan AWS untuk mengenkripsi dan mendekripsi data atas nama Anda. Luangkan waktu untuk mempelajari praktik terbaik untuk kontrol akses ke kunci AWS KMS Anda.

Salah satu praktik terbaik adalah memantau penggunaan kunci enkripsi untuk mendeteksi pola akses yang tidak biasa. Operasi yang dijalankan menggunakan kunci yang dikelola AWS dan kunci yang dikelola pelanggan yang disimpan AWS KMS dapat dicatatkan dalam log di AWS CloudTrail dan harus ditinjau secara berkala. Perhatian khusus harus diberikan pada pemantauan peristiwa penghancuran kunci. Untuk mengurangi penghancuran materi kunci yang tidak disengaja atau berbahaya, peristiwa penghancuran kunci tidak langsung menghapus materi kunci. Upaya untuk menghapus kunci di AWS KMS tunduk pada masa tunggu, yakni secara default 30 hari, sehingga memberikan waktu kepada administrator untuk meninjau tindakan ini dan membatalkan permintaan jika perlu.

Sebagian besar layanan AWS menggunakan AWS KMS secara transparan bagi Anda - satu-satunya persyaratan Anda adalah memutuskan apakah akan menggunakan kunci yang dikelola AWS atau dikelola pelanggan. Jika beban kerja Anda memerlukan penggunaan langsung AWS KMS untuk mengenkripsi atau mendekripsi data, praktik terbaiknya adalah menggunakan enkripsi amplop untuk melindungi data Anda. Perintah SDK Enkripsi AWS dapat menyediakan primitive enkripsi sisi klien aplikasi Anda untuk mengimplementasikan enkripsi amplop dan terintegrasi dengan AWS KMS.

Langkah implementasi

  1. Tentukan opsi manajemen kunci (yang dikelola AWS atau dikelola pelanggan) yang tepat untuk kunci Anda.

    • Untuk memudahkan penggunaan, AWS menawarkan kunci yang dimiliki AWS dan yang dikelola AWS untuk sebagian besar layanan, yang menyediakan kemampuan enkripsi data diam tanpa perlu mengelola materi kunci atau kebijakan kunci.

    • Saat menggunakan kunci yang dikelola pelanggan, pertimbangkan penyimpanan kunci default untuk memberikan keseimbangan terbaik antara ketangkasan, keamanan, kedaulatan data, dan ketersediaan. Kasus-kasus penggunaan lain mungkin memerlukan penggunaan penyimpanan kunci kustom dengan AWS CloudHSM atau penyimpanan kunci eksternal.

  2. Tinjau daftar layanan yang sedang Anda gunakan untuk beban kerja Anda untuk memahami bagaimana AWS KMS terintegrasi dengan layanan. Misalnya, instans EC2 dapat menggunakan volume EBS terenkripsi, yang memverifikasi bahwa snapshot Amazon EBS yang dibuat dari volume tersebut juga dienkripsi menggunakan kunci yang dikelola pelanggan dan mengurangi pengungkapan data snapshot yang tidak terenkripsi secara tidak disengaja.

    • Bagaimana layanan AWS menggunakan AWS KMS

    • Untuk informasi mendetail tentang opsi enkripsi yang ditawarkan oleh layanan AWS, lihat topik Enkripsi Data Diam di panduan pengguna atau panduan developer untuk layanan tersebut.

  3. Implementasikan AWS KMS: AWS KMS memudahkan Anda membuat dan mengelola kunci serta mengontrol penggunaan enkripsi di berbagai layanan AWS dan dalam aplikasi Anda.

  4. Pertimbangkan AWS Encryption SDK: Gunakan AWS Encryption SDK dengan integrasi AWS KMS ketika aplikasi Anda harus mengenkripsi data di sisi klien.

  5. Aktifkan IAM Access Analyzer agar secara otomatis meninjau dan memberi tahu jika ada kebijakan kunci AWS KMS yang terlalu luas.

  6. Aktifkan Security Hub agar menerima notifikasi jika ada kebijakan kunci yang salah konfigurasi, kunci yang dijadwalkan untuk dihapus, atau kunci tanpa pengaktifan rotasi otomatis.

  7. Tentukan tingkat pencatatan log yang sesuai untuk kunci AWS KMS Anda. Karena panggilan ke AWS KMS, termasuk peristiwa hanya-baca, dicatat ke log, jumlah log CloudTrail yang terkait dengan AWS KMS bisa jadi sangat banyak.

Sumber daya

Dokumen terkait:

Video terkait:

Contoh terkait: