Anda dapat mengamankan data Anda dalam penyimpanan dan melindungi informasi sensitif dengan mengaktifkan
enkripsi data transparan (TDE) di AlloyDB Omni. Dokumen ini menjelaskan cara membuat cluster yang mendukung TDE dengan memberikan variabel lingkungan vault yang diperlukan dan tanda --tde-kek-url dalam variabel lingkungan POSTGRES_INITDB_ARGS selama inisialisasi database.
Sebelum memulai
- Konfigurasi mesin rahasia KV-V2 HashiCorp Vault untuk memastikan bahwa jalur Key Encryption Key (KEK) dan JSON Web Token (JWT) tersedia.
- Verifikasi bahwa AlloyDB Omni memiliki izin untuk membaca file Token Web JSON (JWT), yang merupakan token autentikasi.
Membuat cluster
Untuk membuat cluster yang mendukung TDE, Anda harus meneruskan konfigurasi Key Management Service (KMS) dan kredensial autentikasi yang diperlukan selama inisialisasi database. Satu-satunya jenis autentikasi yang didukung adalah jwt.
Pilih tab untuk runtime penampung Anda.
Docker
docker run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Docker
docker run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Podman
podman run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Podman
podman run -d --name CONTAINER_NAME \ --network host \ -v DATA_DIR:/var/lib/postgresql/data \ -v VAULT_CERT_PATH_ON_DISK:VAULT_CERT_PATH \ -e VAULT_AUTH_TYPE=jwt \ -e VAULT_AUTH_MOUNT=JWT_AUTH_ENGINE_MOUNT \ -e VAULT_JWT_PATH=JWT_FILE_PATH \ -e VAULT_ROLE=VAULT_ROLE \ -e VAULT_CERT_PATH=VAULT_CERT_PATH \ -e POSTGRES_INITDB_ARGS=" \ --tde-kek-url=KEK_URL" \ google/alloydbomni:IMAGE_TAG
Ganti kode berikut:
CONTAINER_NAME: nama container yang akan dibuat. Contoh,alloydb-tde.DATA_DIR: direktori lokal yang akan dipasang sebagai volume data untuk AlloyDB Omni. Contoh,/local/data.VAULT_AUTH_TYPE: jenis autentikasi yang akan digunakan untuk koneksi vault. Hanyajwtyang didukung.JWT_AUTH_ENGINE_MOUNT: jalur tempat mesin autentikasi HashiCorp Vault di-mount. Contoh,/auth/jwt.JWT_FILE_PATH: jalur tempat JWT vault disimpan di node Anda. Contoh,tde-tls/jwt-token.- (Opsional)
VAULT_ROLE: peran klien yang ditentukan dalam penyiapan Vault yang memungkinkan HashiCorp Vault memverifikasi keaslian token JWT. VAULT_CERT_PATH_ON_DISK: jalur ke sertifikat vault di komputer host. Contoh,/local/vault/config.VAULT_CERT_PATH: jalur tempat sertifikat untuk koneksi vault berada di container Anda. Contoh,/tde-tls. Jika tidak disetel, sertifikat di penyimpanan tepercaya default akan digunakan.KEK_URL: URL yang sepenuhnya memenuhi syarat ke KEK di HashiCorp Vault. Gunakanvaultsebagai protokol untuk menentukan HashiCorp Vault sebagai penyedia KMS—misalnya,vault://127.0.0.1:8200/v1/secrets/data/alloydb_kek.IMAGE_TAG: Gunakan18.3.0untuk image Debian terbaru atau18.3.0-ubiuntuk image UBI terbaru.
Untuk mengaktifkan TDE bagi data cache columnar engine yang ditransfer ke penyimpanan SSD, hubungkan ke instance database Anda dan jalankan kueri berikut:
ALTER SYSTEM SET google_columnar_engine.enable_tde_for_storage_cache = 'on';
Mulai ulang server database agar perubahan diterapkan.
Referensi metrik TDE
Anda dapat melihat semua metrik TDE di agen pemantauan AlloyDB Omni. Tabel berikut menjelaskan setiap metrik.
| Nama | Deskripsi | Label | Unit | Jenis |
|---|---|---|---|---|
alloydb_omni_database_tde_data_blocks_decrypted_count_total |
Jumlah blok data yang didekripsi. | Tidak berlaku | konter | |
alloydb_omni_database_tde_data_blocks_encrypted_count_total |
Jumlah blok data yang dienkripsi. | Tidak berlaku | konter | |
alloydb_omni_database_tde_data_decryption_time_us_total |
Total waktu yang dihabiskan dalam dekripsi blok data. | Tidak berlaku | mikrodetik | konter |
alloydb_omni_database_tde_data_encryption_time_us_total |
Total waktu yang dihabiskan dalam enkripsi blok data. | Tidak berlaku | mikrodetik | konter |
alloydb_omni_database_tde_enabled |
Status diaktifkannya TDE. | Tidak berlaku | ukur | |
alloydb_omni_database_tde_kek_info |
Informasi KEK TDE. |
|
ukur | |
alloydb_omni_database_tde_temp_blocks_decrypted_count_total |
Jumlah blok sementara yang didekripsi. | Tidak berlaku | konter | |
alloydb_omni_database_tde_temp_blocks_encrypted_count_total |
Jumlah blok sementara yang dienkripsi. | Tidak berlaku | konter | |
alloydb_omni_database_tde_temp_decryption_time_us_total |
Total waktu yang dihabiskan dalam dekripsi blok sementara. | Tidak berlaku | mikrodetik | konter |
alloydb_omni_database_tde_temp_encryption_time_us_total |
Total waktu yang dihabiskan dalam enkripsi blok sementara. | Tidak berlaku | mikrodetik | konter |
alloydb_omni_database_tde_wal_blocks_decrypted_count_total |
Jumlah blok WAL yang didekripsi. | Tidak berlaku | konter | |
alloydb_omni_database_tde_wal_blocks_encrypted_count_total |
Jumlah blok WAL yang dienkripsi. | Tidak berlaku | konter | |
alloydb_omni_database_tde_wal_decryption_time_us_total |
Total waktu yang dihabiskan dalam dekripsi blok WAL. | Tidak berlaku | mikrodetik | konter |
alloydb_omni_database_tde_wal_encryption_time_us_total |
Total waktu yang dihabiskan dalam enkripsi blok WAL. | Tidak berlaku | mikrodetik | konter |
tde_chill_cache_blocks_encrypted |
Jumlah blok cache dingin yang dienkripsi. | Tidak berlaku | konter | |
tde_chill_cache_blocks_decrypted |
Jumlah blok cache dingin yang didekripsi. | Tidak berlaku | konter | |
tde_chill_cache_blocks_total_encryption_time_us |
Total waktu yang dihabiskan dalam enkripsi blok cache dingin. | Tidak berlaku | mikrodetik | konter |
tde_chill_cache_blocks_total_decryption_time_us |
Total waktu yang dihabiskan dalam dekripsi blok cache dingin. | Tidak berlaku | mikrodetik | konter |
tde_ce_cache_ssd_blocks_encrypted |
Jumlah blok cache kolom yang ditransfer ke penyimpanan SSD yang dienkripsi. | Tidak berlaku | konter | |
tde_ce_cache_ssd_blocks_decrypted |
Jumlah blok cache kolom yang ditransfer ke penyimpanan SSD yang didekripsi. | Tidak berlaku | konter | |
tde_ce_cache_ssd_blocks_total_encryption_time_us |
Total waktu yang dihabiskan untuk mengenkripsi blok cache columnar yang ditransfer ke penyimpanan SSD. | Tidak berlaku | mikrodetik | konter |
tde_ce_cache_ssd_blocks_total_decryption_time_us |
Total waktu yang dihabiskan untuk mendekripsi blok cache kolom yang dilimpahkan ke penyimpanan SSD. | Tidak berlaku | mikrodetik | konter |