Transparent Data Encryption (TDE) untuk AlloyDB Omni

Pilih versi dokumentasi:

Untuk melindungi informasi sensitif dan memenuhi persyaratan kepatuhan yang ketat tanpa mengubah kode aplikasi, gunakan enkripsi data transparan (TDE) untuk mengamankan data dalam penyimpanan di AlloyDB Omni. Ringkasan ini menjelaskan cara TDE mengenkripsi file, log, dan cache database secara otomatis sebelum ditulis ke disk, sehingga memastikan keamanan yang mendalam dengan overhead operasional minimal.

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): kunci yang 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.

Cara kerja TDE dengan AlloyDB Omni

Jika 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, catatan WAL, atau file sementara ke disk fisik, database akan otomatis mengenkripsi data menggunakan algoritma AES-256 sebelum menuliskannya.
    • Membaca dari disk: saat database perlu membaca data ke dalam memori, database akan otomatis mendekripsi blok menggunakan DEK yang disimpan dalam memori.
    • Enkripsi cache: TDE juga mendukung cache disk, termasuk informasi columnar engine yang disimpan dalam cache. Data yang ditulis ke lapisan penyimpanan cache dingin dienkripsi, dan data yang dilimpahkan ke cache SSD mesin columnar dienkripsi sebelum ditulis ke SSD dan didekripsi saat dibaca.
  • Pengoptimalan performa: TDE mencakup pengoptimalan untuk mempertahankan performa tinggi sekaligus mengamankan data. Layanan ini menggunakan perlindungan AES-256-XTS yang dioptimalkan untuk blok data dan cache, serta menampilkan pengoptimalan penulisan sinkron untuk meminimalkan latensi pada jalur cepat.

  • Batas keamanan: KEK Anda tidak pernah disimpan di disk database lokal, sehingga meskipun media penyimpanan fisik terganggu, 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.
  • File cache columnar engine: AES-256-XTS.
  • File cache dingin: AES-256-XTS.
  • 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 terlindungi dengan tingkat keamanan yang sama seperti database utama Anda.

Cadangan hanya dapat dipulihkan ke cluster tempat KEK yang sama tersedia.

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, kecuali initdb, 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 DATABASE menggunakan strategi FILE_COPY.
  • Di cluster yang mendukung TDE, pencadangan Barman hanya mendukung mode rsync. Metode pembayaran cadangan postgres tidak didukung.

Langkah berikutnya