Praktik terbaik keamanan pencegahan DynamoDB - Amazon DynamoDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Praktik terbaik keamanan pencegahan DynamoDB

Praktik terbaik berikut dapat membantu Anda mengantisipasi dan mencegah insiden keamanan di Amazon DynamoDB.

Enkripsi saat istirahat

DynamoDB mengenkripsi saat istirahat semua data pengguna yang disimpan dalam tabel, indeks, aliran, dan cadangan menggunakan kunci enkripsi yang disimpan dalam AWS Key Management Service (AWS KMS). Ini memberi lapisan perlindungan data tambahan dengan mengamankan data Anda dari akses yang tidak sah ke penyimpanan pokok.

Anda dapat menentukan apakah DynamoDB harus menggunakan Kunci milik AWS (tipe enkripsi default), sebuahKunci yang dikelola AWS, atau kunci yang dikelola pelanggan untuk mengenkripsi data pengguna. Untuk informasi selengkapnya, lihat Enkripsi Amazon DynamoDB saat Istirahat.

Menggunakan peran IAM untuk mengautentikasi akses ke DynamoDB

Untuk pengguna, aplikasi, dan layanan AWS lainnya agar dapat mengakses DynamoDB, mereka harus menyertakan kredensial AWS yang valid dalam permintaan AWS API mereka. Anda tidak boleh menyimpan kredensial AWS secara langsung di aplikasi atau instans EC2. Ini adalah kredensial jangka panjang yang tidak dirotasi secara otomatis dan dapat menimbulkan dampak bisnis yang signifikan jika dibobol. IAM role memungkinkan Anda memperoleh kunci akses sementara yang dapat digunakan untuk mengakses layanan dan sumber daya AWS.

Untuk informasi selengkapnya, lihat Manajemen Identitas dan Akses untuk Amazon DynamoDB.

Menggunakan kebijakan IAM untuk otorisasi dasar DynamoDB

Saat memberikan izin, Anda memutuskan siapa yang mendapatkannya, API DynamoDB mana yang mereka dapatkan izinnya, dan tindakan khusus yang ingin Anda izinkan pada sumber daya tersebut. Menerapkan akses hak istimewa yang terkecil adalah hal mendasar dalam mengurangi risiko keamanan dan dampak yang dapat disebabkan oleh kesalahan atau niat jahat.

Memberikan kebijakan izin kepada identitas IAM (yaitu, pengguna, grup, dan peran) dan dengan demikian memberikan izin untuk melakukan operasi pada sumber daya DynamoDB.

Anda dapat melakukan hal ini dengan cara berikut:

Gunakan syarat kebijakan IAM untuk kontrol akses terperinci

Ketika memberikan izin di DynamoDB, Anda dapat menetapkan syarat yang menentukan bagaimana kebijakan izin berlaku. Menerapkan akses hak istimewa yang terkecil adalah hal mendasar dalam mengurangi risiko keamanan dan dampak yang dapat disebabkan oleh kesalahan atau niat jahat.

Anda dapat menetapkan syarat saat memberikan izin menggunakan kebijakan IAM. Misalnya, Anda dapat melakukan hal berikut:

  • Mengizinkan pengguna mengakses hanya-baca pada item dan atribut tertentu dalam tabel atau indeks sekunder.

  • Mengizinkan pengguna mengakses hanya-tulis pada atribut tertentu dalam tabel, berdasarkan identitas pengguna tersebut.

Untuk informasi selengkapnya, lihat Menggunakan Ketentuan Kebijakan IAM untuk Kontrol Akses Detail.

Menggunakan kebijakan dan VPC endpoint untuk mengakses DynamoDB

Jika Anda hanya memerlukan akses ke DynamoDB dari dalam virtual private cloud (VPC), Anda harus menggunakan VPC endpoint untuk membatasi akses hanya dari VPC yang diperlukan. Melakukan hal ini akan mencegah lalu lintas melintasi internet terbuka dan tunduk pada lingkungan tersebut.

Menggunakan VPC endpoint untuk DynamoDB akan memungkinkan Anda untuk mengontrol dan membatasi akses menggunakan hal berikut:

  • Kebijakan VPC endpoint – Kebijakan ini diterapkan pada VPC endpoint DynamoDB. Kebijakan tersebut memungkinkan Anda untuk mengontrol dan membatasi akses API ke tabel DynamoDB.

  • Kebijakan IAM — Dengan menggunakan aws:sourceVpce ketentuan kebijakan yang dilampirkan pada pengguna, grup, atau peran, Anda dapat menegakkan bahwa semua akses ke tabel DynamoDB adalah melalui titik akhir VPC yang ditentukan.

Untuk informasi selengkapnya, lihat titik akhir Amazon DynamoDB.

Pertimbangkan enkripsi sisi klien

Kami menyarankan Anda merencanakan strategi enkripsi sebelum menerapkan tabel Anda di DynamoDB. Jika Anda menyimpan data sensitif atau rahasia di DynamoDB, pertimbangkan untuk menyertakan enkripsi sisi klien dalam paket Anda. Dengan cara ini Anda dapat mengenkripsi data sedekat mungkin dengan asalnya, dan memastikan perlindungannya selama siklus hidupnya. Mengenkripsi data sensitif Anda saat transit dan istirahat membantu memastikan bahwa data plaintext Anda tidak tersedia untuk pihak ketiga mana pun.

AWSDatabase Encryption SDK untuk DynamoDB adalah pustaka perangkat lunak yang membantu Anda melindungi data tabel Anda sebelum Anda mengirimkannya ke DynamoDB. Ini mengenkripsi, menandatangani, memverifikasi, dan mendekripsi item tabel DynamoDB Anda. Anda mengontrol atribut mana yang dienkripsi dan ditandatangani.