Enkripsi ini bersifat transparan karena kueri SQL, DDL, dan operasi DML berfungsi secara normal tanpa memerlukan perubahan aplikasi. Data dienkripsi secara otomatis sebelum ditulis ke disk dan didekripsi saat dibaca ke dalam memori.
Hierarki kunci
AlloyDB Omni menerapkan hierarki kunci dua tingkat yang mempertahankan pemisahan tugas yang ketat antara database dan infrastruktur keamanan yang dikelola pengguna.
- Kunci Enkripsi Data (DEK): dibuat dan dimiliki oleh AlloyDB Omni. Kunci ini mengenkripsi file data, WAL, dan file sementara yang sebenarnya. AlloyDB Omni menyimpan DEK di disk, tetapi mengenkapsulasinya dengan KEK Anda.
-
Kunci Enkripsi Kunci (KEK): kunci utama yang Anda kelola di
Key Management Service (KMS) eksternal.
AlloyDB Omni menggunakan KEK Anda untuk mengenkripsi DEK.
AlloyDB Omni hanya mengakses kunci ini saat startup untuk membuka
DEK. KEK Anda tidak pernah disimpan secara persisten di disk database.
-
Parameter lokasi dan akses KEK disediakan melalui
variabel lingkungan dan flag inisialisasi
--tde-kek-url.
-
Parameter lokasi dan akses KEK disediakan melalui
variabel lingkungan dan flag inisialisasi
Cara kerja TDE dengan AlloyDB Omni
Saat TDE diaktifkan, AlloyDB Omni mengamankan data Anda menggunakan model enkripsi berlapis yang terintegrasi dengan KMS eksternal.
- Inisialisasi dan pengambilan kunci: selama fase startup atau inisialisasi cluster, mesin AlloyDB Omni membuat koneksi aman ke KMS Anda. Layanan ini melakukan autentikasi menggunakan Token Web JSON (JWT) dan mengambil KEK.
- Membuka DEK: AlloyDB Omni menggunakan KEK Anda untuk membuka DEK, yang disimpan di penyimpanan lokal dalam status terbungkus. Kemudian, DEK ini dimuat ke dalam memori.
- Operasi data transparan:
- Menulis ke disk: saat database menulis blok data, rekaman WAL, atau file sementara ke disk fisik, database akan otomatis mengenkripsi data menggunakan algoritma AES-256 sebelum menulis ke disk fisik.
- Membaca dari disk: saat database perlu membaca data ke dalam memori, database akan otomatis mendekripsi blok menggunakan DEK yang disimpan dalam memori.
- Batas keamanan: KEK Anda tidak pernah disimpan di disk database lokal, sehingga meskipun media penyimpanan fisik disusupi, data tetap tidak dapat dibaca tanpa akses yang sah ke brankas eksternal.
Cakupan dan spesifikasi enkripsi
AlloyDB Omni menggunakan algoritma AES-256 standar industri untuk mengamankan data Anda.
- File data (tabel dan indeks): AES-256-XTS.
- Write-ahead log (WAL): AES-256-CTR.
- File sementara: AES-256-XTS atau AES-256-CTR, bergantung pada jenis data sementara.
- Penggabungan kunci: AES-256-KWP.
Pencadangan dan ketersediaan tinggi
Jika TDE diaktifkan, cadangan yang dibuat menggunakan pgBackRest akan mewarisi konfigurasi enkripsi cluster sumber. Hal ini memastikan bahwa data cadangan Anda tetap dilindungi dengan tingkat keamanan yang sama seperti database utama Anda.
Untuk penyiapan HA, lingkungan pemulihan harus diinisialisasi dengan variabel lingkungan vault yang sama. Variabel lingkungan vault harus tersedia di semua host yang berpartisipasi.
KMS dan autentikasi yang didukung
AlloyDB Omni mendukung HashiCorp Vault sebagai penyedia KMS eksternal. AlloyDB Omni hanya mendukung mesin rahasia KV-V2, dan satu-satunya metode autentikasi yang didukung adalah JWT.
Kompatibilitas alat PostgreSQL
Cluster yang mendukung TDE mendukung semua alat PostgreSQL bawaan, kecualiinitdb, secara transparan melalui variabel lingkungan.
Jika Anda menggunakan initdb, pastikan Anda meneruskan URL KEK secara eksplisit.
Untuk mengetahui informasi selengkapnya, lihat
Membuat cluster yang mendukung TDE.
Batasan
- Anda tidak dapat mengaktifkan TDE di cluster yang ada.
- Setelah diaktifkan, Anda tidak dapat menonaktifkan TDE.
- Upgrade versi utama tidak didukung untuk cluster yang diaktifkan TDE.
- Anda tidak dapat memulihkan cadangan terenkripsi ke server yang tidak terenkripsi atau cadangan yang tidak terenkripsi ke server terenkripsi.
- Rotasi DEK tidak didukung.
- Rotasi KEK didukung selama jalur URL KEK tetap sama.
- Anda tidak dapat
CREATE DATABASEmenggunakan strategiFILE_COPY. - Di cluster yang mendukung TDE, pencadangan Barman hanya mendukung mode
rsync. Metode pembayaran cadanganpostgrestidak didukung.
Langkah berikutnya
- Pelajari cara Membuat cluster yang mendukung TDE.