Fitur enkripsi kolom yang disediakan oleh Data Security Center (DSC) memungkinkan akses terenkripsi ke data kolom sensitif di ApsaraDB RDS for PostgreSQL. Fitur ini mencegah personel tidak berwenang mengakses data sensitif dalam teks biasa melalui perangkat lunak platform cloud atau alat koneksi database, memastikan bahwa data tersedia tetapi tidak terlihat di database, dan melindungi dari ancaman keamanan baik internal maupun eksternal.
Prasyarat
Instans berjalan pada RDS PostgreSQL 16 dengan versi mesin minor 20250228 atau lebih baru.
Instans berada di salah satu wilayah berikut:
Tipe Wilayah
Nama Wilayah
Tiongkok Daratan
Cina (Qingdao), Cina (Beijing), Cina (Zhangjiakou), Cina (Hohhot), Cina (Hangzhou), Cina (Shanghai), Cina (Shenzhen), Cina (Guangzhou), Cina (Chengdu).
Luar Wilayah Daratan Tiongkok
Cina (Hong Kong), Singapura, Malaysia (Kuala Lumpur), Indonesia (Jakarta), Jerman (Frankfurt).
Pengenalan fitur
Fitur enkripsi kolom untuk RDS PostgreSQL disediakan oleh Data Security Center (DSC). Menggunakan algoritma enkripsi AES-256-GCM dan metode enkripsi kunci lokal, fitur ini mengonfigurasi enkripsi untuk kolom data sensitif dalam database. Hal ini memastikan bahwa data sensitif disimpan dalam bentuk terenkripsi dan memungkinkan pengguna berwenang mengakses data teks biasa melalui klien setelah dekripsi. Anda dapat memilih dan memodifikasi instans RDS PostgreSQL, database, tabel, dan rentang kolom yang akan dienkripsi.
Persiapan
Sebelum mengaktifkan fitur enkripsi kolom, selesaikan langkah-langkah berikut secara berurutan: aktifkan atau tingkatkan layanan DSC, otorisasi DSC untuk mengakses sumber daya cloud, otorisasi aset database, hubungkan ke database, dan jalankan tugas identifikasi data sensitif.
1. Aktifkan atau tingkatkan layanan DSC
2. Otorisasi DSC untuk mengakses sumber daya cloud
3. Otorisasi aset database
4. Hubungkan ke database dan jalankan tugas identifikasi data sensitif
Aktifkan enkripsi kolom
Masuk ke Konsol Data Security Center.Di panel navigasi sisi kiri, pilih .
PentingKolom Encryption Check harus menampilkan Passed sebelum mengaktifkan dan mengonfigurasi enkripsi kolom untuk database yang sesuai. Jika menampilkan Failed, versi utama atau versi mesin minor database mungkin tidak mendukung fitur enkripsi kolom. Untuk informasi lebih lanjut, lihat FAQ dalam topik ini.
Klik Rapid Encryption di atas daftar instans database untuk mengonfigurasi enkripsi kolom untuk semua kolom yang belum dienkripsi.
Sebagai alternatif, Anda dapat mengklik Rapid Encryption di kolom Actions dari instans database target untuk mengonfigurasi enkripsi kolom untuk instans tersebut.

Di panel Encryption Configuration, pilih Asset Type, Instance name, Plaintext Permission Accounts, serta target Databases, Table, dan Column yang ingin dikonfigurasi untuk enkripsi kolom, lalu klik OK. Perhatikan hal-hal berikut:
RDS PostgreSQL hanya mendukung algoritma enkripsi
AES-256-GCMdan metode enkripsi lokal.Setelah konfigurasi enkripsi selesai, izin default untuk akun database RDS PostgreSQL adalah Ciphertext Permission (JDBC Decryption), yang memungkinkan akses ke data teks terenkripsi dari kolom terenkripsi secara default dan mendukung melihat data teks biasa setelah dekripsi menggunakan kunci lokal melalui kode klien.
Jika Anda perlu mengakses data teks biasa secara langsung, tambahkan akun database yang sesuai di bagian Plaintext Permission Accounts. Akun ini akan memiliki izin teks biasa dan dapat mengakses data teks biasa dari kolom terenkripsi secara langsung.
PentingJika Anda perlu mengklasifikasikan dan memberi peringkat data terbaru di database, akun database yang ditetapkan sebagai kredensial (akun database yang digunakan untuk menghubungkan DSC ke instans RDS PostgreSQL) harus memiliki izin teks biasa.
Modifikasi konfigurasi enkripsi kolom
Modifikasi ruang lingkup kolom terenkripsi
Setelah mengaktifkan enkripsi kolom, Anda dapat mengaktifkan atau menonaktifkan fitur enkripsi kolom untuk kolom tertentu di instans database berdasarkan kebutuhan Anda, memodifikasi ruang lingkup kolom terenkripsi.
Masuk ke Konsol Data Security Center.Di panel navigasi sisi kiri, pilih .
Di daftar instans, perluas instans target. Di daftar database, temukan nama Databases, Table, dan Column target. Klik Enable Encryption atau Disable Encryption untuk mengonfigurasi enkripsi untuk satu kolom.

Modifikasi izin akun database
Kecuali untuk akun yang disetel ke Plaintext Permissions, semua akun lainnya di instans database memiliki Ciphertext Permission (JDBC Decryption). Berdasarkan kebutuhan bisnis Anda, Anda dapat memodifikasi izin akun menjadi Plaintext Permissions atau Ciphertext Permission (JDBC Decryption).
Masuk ke Konsol Data Security Center.
Di halaman , klik Accounts di bagian Permission Settings.
Anda juga dapat mengklik Edit di kolom Actions dari daftar instans, lalu klik Account Permissions di sebelah Edit di panel Configure.
Di panel Permission Settings, cari instans target dan akun untuk melihat izin akun saat ini.
CatatanJika akun database baru yang ditambahkan tidak ditampilkan dalam daftar, harap selesaikan Asset synchronization terlebih dahulu, lalu periksa kembali.
Klik Modify Permissions di kolom Actions dari akun target.
Anda juga dapat memilih beberapa akun dengan izin yang sama dan klik Batch Modify Permissions di bagian bawah daftar.
Di kotak dialog Modifikasi Izin, pilih izin target dan klik OK.
Verifikasi hasil enkripsi kolom
Anda dapat mengonfigurasi enkripsi kolom database dan izin akun database untuk memverifikasi hasil enkripsi kolom.
Hubungkan instans database RDS PostgreSQL 16 ke DSC, selesaikan klasifikasi dan grading data sensitif, dan aktifkan enkripsi kolom untuk kolom tertentu di instans RDS (menggunakan kolom
students01di tabelbirth_datesebagai contoh). Pada saat yang sama, atur satu akun database di instans RDS untuk memiliki Plaintext Permissions dan pertahankan akun lain dengan Ciphertext Permission (JDBC Decryption).
Masuk ke database menggunakan Layanan Manajemen Data (DMS) dengan akun yang memiliki Ciphertext Permission (JDBC Decryption). Jalankan pernyataan
SELECT * FROM students01;untuk melihat tabel data. Kolom terenkripsi menampilkan data teks terenkripsi.
Masuk ke database menggunakan Layanan Manajemen Data (DMS) dengan akun yang memiliki Plaintext Permission. Jalankan pernyataan
SELECT * FROM students01;untuk melihat tabel data. Data teks biasa dari kolom terenkripsi dikembalikan.
Petunjuk klien
Jika akun database Anda memiliki Izin Teks Terenkripsi (Dekripsi JDBC), Anda dapat menggunakan driver enkripsi kolom (JDBC) untuk mengakses database RDS target dan mengakses data kolom terenkripsi melalui aplikasi Java. JDBC secara otomatis mendekripsi data teks terenkripsi dan mengembalikan data teks biasa, menjadikan proses ini transparan bagi aplikasi. Untuk informasi lebih lanjut, lihat Driver enkripsi kolom (JDBC).
FAQ
Apa yang harus saya lakukan jika instans RDS gagal dalam pemeriksaan enkripsi?
Informasi terkait
Untuk fitur dan prinsip enkripsi kolom database, lihat Ikhtisar enkripsi kolom.
Jika data kolom sensitif di database berubah setelah otorisasi, Anda perlu memindai ulang data tersebut. Untuk operasi spesifik, lihat Memindai data sensitif melalui tugas deteksi.




