Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengenkripsi sumber daya Amazon RDS
Amazon RDS dapat mengenkripsi instans DB Amazon RDS Anda. Data yang dienkripsi saat diam termasuk penyimpanan dasar untuk instans DB, pencadangan otomatisnya, replika baca, dan snapshot.
Instans DB terenkripsi Amazon RDS menggunakan algoritma AES-256 standar industri untuk mengenkripsi data Anda di server yang menjadi host instans DB Amazon RDS Anda. Setelah data Anda dienkripsi, Amazon RDS menangani autentikasi akses dan dekripsi data Anda secara transparan dengan dampak minimal terhadap performa. Anda tidak perlu memodifikasi aplikasi klien basis data untuk menggunakan enkripsi.
catatan
Untuk instans DB terenkripsi dan tidak terenkripsi, data yang sedang transit antara sumber dan replika baca dienkripsi, bahkan saat mereplikasi di seluruh Wilayah. AWS
Topik
Ikhtisar mengenkripsi sumber daya Amazon RDS
Instans DB terenkripsi Amazon RDS memberikan lapisan perlindungan data tambahan dengan mengamankan data Anda dari akses yang tidak sah ke penyimpanan yang mendasari. Anda dapat menggunakan enkripsi Amazon RDS untuk meningkatkan perlindungan data di aplikasi Anda yang di-deploy di cloud, dan untuk memenuhi persyaratan kepatuhan enkripsi diam. Untuk instans DB terenkripsi Amazon RDS, semua log, cadangan, dan snapshot akan dienkripsi. Untuk informasi selengkapnya tentang ketersediaan dan keterbatasan enkripsi, lihat Ketersediaan enkripsi Amazon RDS danBatasan instans DB terenkripsi Amazon RDS.
Amazon RDS menggunakan AWS Key Management Service kunci untuk mengenkripsi sumber daya ini. AWS KMS menggabungkan perangkat keras dan perangkat lunak yang aman dan sangat tersedia untuk menyediakan sistem manajemen kunci yang diskalakan untuk cloud. Anda dapat menggunakan Kunci yang dikelola AWS, atau Anda dapat membuat kunci yang dikelola pelanggan.
Saat membuat instans DB terenkripsi, Anda bisa memilih kunci yang dikelola pelanggan atau Kunci yang dikelola AWS untuk Amazon RDS untuk mengenkripsi instans DB. Jika Anda tidak menentukan pengenal kunci untuk kunci yang dikelola pelanggan, Amazon RDS menggunakan Kunci yang dikelola AWS untuk instans DB baru Anda. Amazon RDS membuat RDS Kunci yang dikelola AWS untuk Amazon untuk akun Anda AWS . AWS Akun Anda memiliki RDS Amazon yang berbeda Kunci yang dikelola AWS untuk setiap AWS Wilayah.
Dengan menggunakan AWS KMS, Anda dapat membuat kunci terkelola pelanggan dan menentukan kebijakan yang mengontrol penggunaan kunci yang dikelola pelanggan ini. AWS KMS mendukung CloudTrail, sehingga Anda dapat mengaudit penggunaan kunci KMS untuk memverifikasi bahwa kunci yang dikelola pelanggan digunakan dengan tepat. Anda dapat menggunakan kunci yang dikelola pelanggan dengan Amazon Aurora dan AWS layanan yang didukung seperti Amazon S3, Amazon EBS, dan Amazon Redshift. Untuk daftar layanan yang terintegrasi AWS KMS, lihat Integrasi AWS Layanan
-
Setelah membuat instans DB terenkripsi, Anda tidak dapat mengubah kunci KMS yang digunakan oleh instans DB tersebut. Oleh karena itu, tentukan persyaratan kunci KMS sebelum membuat instans DB terenkripsi.
Jika Anda harus mengubah kunci enkripsi untuk instans DB Anda, buat snapshot manual instance Anda dan aktifkan enkripsi saat menyalin snapshot. Untuk informasi lebih lanjut, lihat artikel Re:Post Knowledge
. -
Jika Anda menyalin snapshot terenkripsi, Anda dapat menggunakan kunci KMS yang berbeda untuk mengenkripsi snapshot target, bukan yang digunakan untuk mengenkripsi snapshot sumber.
-
Replika baca instans terenkripsi Amazon RDS harus dienkripsi menggunakan kunci KMS yang sama dengan instans DB utama ketika keduanya berada di Wilayah yang sama. AWS
-
Jika instans DB utama dan replika baca berada di AWS Wilayah yang berbeda, Anda mengenkripsi replika baca menggunakan kunci KMS untuk Wilayah tersebut. AWS
-
Anda tidak dapat membagikan snapshot yang telah dienkripsi menggunakan AWS akun Kunci yang dikelola AWS yang membagikan snapshot.
-
Amazon RDS juga mendukung enkripsi instans Oracle atau SQL Server DB dengan Enkripsi Data Transparan (TDE). TDE dapat digunakan dengan enkripsi diam RDS, meski menggunakan enkripsi TDE dan RDS secara bersamaan dapat sedikit memengaruhi performa basis data Anda. Anda harus mengelola kunci yang berbeda untuk setiap metode enkripsi. Untuk informasi selengkapnya tentang TDE, lihat Enkripsi Data Transparan Oracle atau Support untuk Enkripsi Data Transparan di SQL Server.
penting
Amazon RDS dapat kehilangan akses ke kunci KMS untuk instans DB saat Anda menonaktifkan kunci KMS. Jika Anda kehilangan akses ke kunci KMS, instans DB terenkripsi masuk ke status. inaccessible-encryption-credentials-recoverable
Instans DB tetap dalam keadaan ini selama tujuh hari, di mana instance dihentikan. Panggilan API yang dilakukan ke instans DB selama waktu ini mungkin tidak berhasil. Untuk memulihkan instans DB, aktifkan kunci KMS dan restart instance DB ini. Aktifkan kunci KMS dari AWS Management Console, AWS CLI, atau RDS API. Mulai ulang instance DB menggunakan AWS CLI perintah start-db-instanceatau AWS Management Console.
inaccessible-encryption-credentials-recoverable
Status hanya berlaku untuk instans DB yang dapat berhenti. Anda tidak dapat memulihkan instance yang tidak dapat berhenti, seperti replika baca dan instance dengan replika baca. Untuk informasi selengkapnya, lihat Batasan untuk menghentikan instans DB Anda.
Jika instans DB tidak dipulihkan dalam waktu tujuh hari, itu masuk ke inaccessible-encryption-credentials
status terminal. Dalam keadaan ini, instans DB tidak dapat digunakan lagi dan Anda hanya dapat mengembalikan instans DB dari cadangan. Sebaiknya selalu aktifkan pencadangan instans DB terenkripsi agar data terenkripsi di basis data Anda tidak hilang.
Selama pembuatan instans DB, Amazon RDS memeriksa apakah prinsipal panggilan memiliki akses ke kunci KMS dan menghasilkan hibah dari kunci KMS yang digunakannya selama masa pakai instans DB. Mencabut akses prinsipal panggilan ke kunci KMS tidak mempengaruhi database yang sedang berjalan. Saat menggunakan kunci KMS dalam skenario lintas akun, seperti menyalin snapshot ke akun lain, kunci KMS perlu dibagikan dengan akun lain. Jika Anda membuat instans DB dari snapshot tanpa menentukan kunci KMS yang berbeda, instance baru menggunakan kunci KMS dari akun sumber. Mencabut akses ke kunci setelah Anda membuat instans DB tidak memengaruhi instance. Namun, menonaktifkan kunci memengaruhi semua instans DB yang dienkripsi dengan kunci itu. Untuk mencegah hal ini, tentukan kunci yang berbeda selama operasi penyalinan snapshot.
Untuk informasi selengkapnya tentang kunci KMS, lihat AWS KMS keys di Panduan Developer AWS Key Management Service dan AWS KMS key manajemen.
Mengenkripsi instans DB
Untuk mengenkripsi instans DB baru, pilih Aktifkan enkripsi di konsol Amazon RDS. Untuk informasi tentang pembuatan instans DB, lihat Membuat instans Amazon RDS DB.
Jika Anda menggunakan create-db-instance AWS CLI perintah untuk membuat instance DB terenkripsi, atur parameternya. --storage-encrypted
Jika Anda menggunakan operasi Create DBInstance API, atur StorageEncrypted
parameter ke true.
Jika Anda menggunakan AWS CLI create-db-instance
perintah untuk membuat instans DB terenkripsi dengan kunci yang dikelola pelanggan, setel --kms-key-id
parameter ke pengidentifikasi kunci apa pun untuk kunci KMS. Jika Anda menggunakan operasi CreateDBInstance
Amazon RDS API, atur parameter KmsKeyId
ke pengidentifikasi kunci mana pun untuk kunci KMS. Untuk menggunakan kunci yang dikelola pelanggan di AWS akun yang berbeda, tentukan kunci ARN atau alias ARN.
Menentukan apakah enkripsi untuk instans DB diaktifkan
Anda dapat menggunakan AWS Management Console, AWS CLI, atau RDS API untuk menentukan apakah enkripsi saat istirahat diaktifkan untuk instans DB.
Untuk menentukan apakah enkripsi diam untuk instans DB diaktifkan
Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/
. -
Di panel navigasi, pilih Basis Data.
-
Pilih nama instans DB yang ingin Anda periksa untuk melihat detailnya.
-
Pilih tab Konfigurasi, dan periksa nilai Enkripsi di bagian Penyimpanan.
Akan muncul Diaktifkan atau Tidak diaktifkan.
Untuk menentukan apakah enkripsi saat istirahat diaktifkan untuk instance DB dengan menggunakan AWS CLI, panggil describe-db-instancesperintah dengan opsi berikut:
-
--db-instance-identifier
– Nama instans DB.
Contoh berikut ini menggunakan kueri untuk mengembalikan TRUE
atau FALSE
mengenai enkripsi diam untuk instans DB mydb
.
contoh
aws rds describe-db-instances --db-instance-identifier
mydb
--query "*[].{StorageEncrypted:StorageEncrypted}" --output text
Untuk menentukan apakah enkripsi saat istirahat diaktifkan untuk instans DB dengan menggunakan Amazon RDS API, panggil DBInstances operasi Deskripsikan dengan parameter berikut:
-
DBInstanceIdentifier
– Nama instans DB.
Ketersediaan enkripsi Amazon RDS
Enkripsi Amazon RDS saat ini tersedia untuk semua mesin basis data dan jenis penyimpanan, kecuali untuk SQL Server Express Edition. SQL Server Express Edition mendukung enkripsi di AWS GovCloud (US) Wilayah.
Enkripsi Amazon RDS tersedia untuk sebagian besar kelas instans DB. Tabel berikut mencantumkan kelas instans DB yang tidak mendukung enkripsi Amazon RDS:
Jenis instans | Kelas instans |
---|---|
Tujuan umum (M1) |
db.m1.small db.m1.medium db.m1.large db.m1.xlarge |
Memori dioptimalkan (M2) |
db.m2.xlarge db.m2.2xlarge db.m2.4xlarge |
Burstable (T2) |
db.t2.micro |
Enkripsi dalam transit
- Enkripsi pada lapisan fisik
-
Semua data yang mengalir Wilayah AWS melalui jaringan AWS global secara otomatis dienkripsi pada lapisan fisik sebelum meninggalkan fasilitas yang aman. AWS Semua lalu lintas di antaranya AZs dienkripsi. Enkripsi tambahan yang lebih lambat, termasuk yang tercantum dalam bagian ini dapat memberikan perlindungan tambahan.
- Enkripsi disediakan oleh peering VPC Amazon dan pengintipan lintas wilayah Gateway Transit
-
Semua lalu lintas lintas wilayah yang menggunakan Amazon VPC dan Transit Gateway mengintip kami secara otomatis dienkripsi massal saat keluar dari Wilayah. Lapisan enkripsi tambahan secara otomatis disediakan di lapisan fisik untuk semua lalu lintas sebelum meninggalkan fasilitas yang AWS aman.
- Enkripsi antar instance
-
AWS menyediakan konektivitas aman dan pribadi antara instans DB dari semua jenis. Selain itu, beberapa tipe instans menggunakan kemampuan offload dari perangkat keras Nitro System yang mendasarinya untuk secara otomatis mengenkripsi lalu lintas dalam transit antar instans. Enkripsi ini menggunakan algoritma Authenticated Encryption with Associated Data (AEAD), dengan enkripsi 256-bit. Tidak ada dampak terhadap performa jaringan. Untuk mendukung enkripsi lalu lintas dalam transit tambahan ini antara instans, persyaratan-persyaratan berikut harus dipenuhi:
-
Instans-instans tersebut menggunakan tipe instans berikut:
-
Tujuan umum: M6i, M6iD, M6in, M6idn, M7g
-
Memori yang dioptimalkan: R6i, R6id, R6in, R6idn, R7g, X2idn, X2IEDN, X2IEZN
-
-
Contohnya sama Wilayah AWS.
-
Instans berada dalam VPC atau VPCs peered yang sama, dan lalu lintas tidak melewati perangkat atau layanan jaringan virtual, seperti penyeimbang beban atau gateway transit.
-
Batasan instans DB terenkripsi Amazon RDS
Berikut batasan pada instans DB terenkripsi Amazon RDS:
-
Anda hanya dapat mengenkripsi instans DB Amazon RDS selama proses pembuatannya, bukan setelah instans DB tersebut selesai dibuat.
Namun, karena Anda dapat mengenkripsi salinan snapshot yang tidak dienkripsi, Anda dapat menambahkan enkripsi secara efektif ke instans DB yang tidak terenkripsi. Artinya, Anda dapat membuat snapshot instans DB, lalu membuat salinan terenkripsi dari snapshot tersebut. Anda kemudian dapat memulihkan instans DB dari snapshot terenkripsi untuk menghasilkan salinan terenkripsi dari instans DB asli. Untuk informasi selengkapnya, lihat Menyalin snapshot DB untuk Amazon RDS.
-
Anda tidak dapat menonaktifkan enkripsi pada instans DB terenkripsi.
-
Anda tidak dapat membuat snapshot terenkripsi dari instans DB yang tidak terenkripsi.
-
Snapshot instans DB terenkripsi harus dienkripsi menggunakan kunci KMS yang sama dengan instans DB.
-
Anda tidak dapat memiliki replika baca terenkripsi dari instans DB yang tidak dienkripsi atau replika baca yang tidak dienkripsi dari instans DB terenkripsi.
-
Replika baca terenkripsi harus dienkripsi dengan kunci KMS yang sama dengan instans DB sumber ketika keduanya berada di Wilayah AWS yang sama.
-
Anda tidak dapat memulihkan cadangan atau snapshot yang tidak terenkripsi ke instans DB terenkripsi.
-
Untuk menyalin snapshot terenkripsi dari satu AWS Wilayah ke wilayah lain, Anda harus menentukan kunci KMS di Wilayah tujuan. AWS Ini karena kunci KMS khusus untuk AWS Wilayah tempat mereka dibuat.
Tangkapan layar sumber tetap terenkripsi selama proses penyalinan. Amazon RDS menggunakan enkripsi amplop untuk melindungi data selama proses penyalinan. Untuk informasi selengkapnya tentang enkripsi amplop, lihat Enkripsi amplop di Panduan Developer AWS Key Management Service .
-
Anda tidak dapat membatalkan enkripsi instans DB terenkripsi. Namun, Anda dapat mengekspor data dari instans DB terenkripsi dan mengimpor data ke instans DB tidak terenkripsi.