Enkripsi SSL melindungi data yang ditransmisikan antara klien database dan instans ApsaraDB RDS for PostgreSQL. Topik ini memandu Anda dalam mengonfigurasi sertifikat cloud untuk mengaktifkan enkripsi SSL serta menghubungkan ke instans menggunakan koneksi terenkripsi.
Jenis sertifikat
Tiga jenis sertifikat tersedia untuk enkripsi SSL, masing-masing dengan tujuan berbeda:
| Item | Cloud certificate | Custom certificate | Client CA certificate |
|---|---|---|---|
| Purpose | Server certificate — client menggunakannya untuk mengautentikasi server | Server certificate — client menggunakannya untuk mengautentikasi server | Client certificate — server menggunakannya untuk mengautentikasi client |
| Issued by | Alibaba Cloud | Otoritas sertifikasi (CA) atau self-signed | Self-signed |
| Validity period | 365 hari | Disesuaikan | Disesuaikan |
| Protected endpoints | 1 | 1 atau lebih | Bervariasi tergantung pada sertifikat cloud atau custom certificate yang digunakan |
Anda harus mengonfigurasi cloud certificate atau custom certificate untuk mengaktifkan enkripsi SSL dan mengautentikasi server. Mengonfigurasi client CA certificate bersifat opsional—fitur ini memungkinkan server mengautentikasi klien.
Cloud certificate dan custom certificate keduanya melindungi sisi server. Untuk melindungi titik akhir internal dan publik secara bersamaan, gunakan custom certificate.
ApsaraDB RDS for PostgreSQL mendukung TLS 1.0, TLS 1.1, dan TLS 1.2.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Memiliki instans ApsaraDB RDS for PostgreSQL yang menjalankan PostgreSQL 10 atau versi lebih baru dengan cloud disk (instans Serverless tidak didukung).
Menginstal pgAdmin 4 — unduh dari pgAdmin 4.
Mengonfigurasi daftar putih alamat IP dan membuat setidaknya satu akun pada instans — lihat Konfigurasi daftar putih alamat IP dan Buat database dan akun.
Catatan penggunaan
Perpanjangan sertifikat: Cloud certificate berlaku selama 365 hari. Sebelum kedaluwarsa, Alibaba Cloud akan mengirimkan notifikasi melalui email dan pesan internal, lalu secara otomatis memperbarui sertifikat tersebut. Untuk menyesuaikan jadwal perpanjangan, gunakan Schedule Event. Lihat Kelola event terjadwal.
Dampak performa: Mengaktifkan enkripsi SSL meningkatkan pemanfaatan CPU dan menambah latensi baca-tulis.
Koneksi yang ada: Setelah mengaktifkan SSL, tutup semua koneksi yang ada dan buat ulang agar enkripsi berlaku.
Restart instans: Operasi berikut akan me-restart instans RDS (masing-masing sekitar 3 menit). Lakukan operasi ini pada jam sepi:
Mengonfigurasi cloud certificate.
Mengubah titik akhir yang dilindungi oleh cloud certificate yang telah dikonfigurasi.
Menonaktifkan enkripsi SSL.
Langkah 1: Aktifkan SSL dengan cloud certificate
Buka halaman Instances. Di bilah navigasi atas, pilih wilayah tempat instans RDS Anda berada, lalu klik ID instans tersebut.
Di panel navigasi kiri, klik Data Security. Pada halaman yang muncul, klik tab SSL.
Jika tab SSL tidak terlihat, pastikan instans Anda memenuhi persyaratan yang tercantum di bagian Prasyarat.
Pilih Cloud Certificate. Klik Configuration di samping Configure Database Certificate (to Prevent Database Disguise), lalu pilih titik akhir yang ingin dilindungi.
- Setiap cloud certificate hanya melindungi satu titik akhir. Jika instans Anda memiliki titik akhir publik, prioritaskan perlindungan tersebut—titik akhir internal hanya dapat diakses dalam jaringan pribadi Anda dan memiliki risiko lebih rendah, sedangkan titik akhir publik lebih rentan terhadap eksposur. - Jika hanya titik akhir internal yang muncul di kotak dialog Select Protected Endpoint, berarti Anda belum mengajukan titik akhir publik. Lihat Lihat dan ubah titik akhir serta nomor port instans ApsaraDB RDS for PostgreSQL. - Setelah Anda mengklik simpan, status instans berubah menjadi Modifying SSL Settings selama sekitar 3 menit. Tunggu hingga status kembali menjadi Running sebelum melanjutkan.

Langkah 2: Unduh sertifikat CA server
Setelah mengonfigurasi cloud certificate, unduh sertifikat CA server dan simpan ke mesin klien Anda. Klien menggunakan sertifikat ini untuk mengautentikasi instans RDS saat koneksi.
Pilih Cloud Certificate, lalu klik Download CA Certificate.

Ekstrak file yang diunduh. Paket tersebut berisi tiga file:
File format Use case PEM Kebanyakan client dan tools — gunakan ini sebagai default JKS Aplikasi Java. File JKS merupakan truststore yang telah dikonversi. Kata sandi: apsaradbP7B Aplikasi Windows yang memerlukan file sertifikat berformat PKCS#7
Langkah 3: Hubungkan ke instans RDS Anda melalui SSL
Hubungkan dengan pgAdmin
Contoh ini menggunakan pgAdmin 4 V6.2.0. Jika versi Anda berbeda, rujuk ke dokumentasi resmi pgAdmin 4.
Jalankan pgAdmin 4.
Jika ini pertama kalinya Anda membuka versi pgAdmin yang lebih baru, Anda akan diminta menetapkan kata sandi utama untuk melindungi kredensial yang disimpan.
Klik kanan Servers dan pilih Register > Server.

Di tab General, masukkan nama untuk server tersebut.

Klik tab Connection dan isi detail koneksi.
Parameter Description Host name/address Titik akhir instans RDS. Gunakan titik akhir internal untuk koneksi melalui jaringan pribadi, atau titik akhir publik untuk koneksi melalui Internet. Untuk menemukan nilai-nilai ini, lihat Lihat dan ubah titik akhir serta nomor port instans ApsaraDB RDS for PostgreSQL. Port Nomor port instans RDS. Username Username akun. Lihat Buat database dan akun. Password Kata sandi akun. 
Klik tab Parameters dan konfigurasi pengaturan SSL.
Parameter Description SSL mode Untuk alasan keamanan, kami merekomendasikan mengatur parameter ini ke Require, Verify-CA, atau Verify-Full. Berikut penjelasan masing-masing nilai: Require — client mengenkripsi koneksi tetapi tidak memvalidasi instans RDS. Verify-CA — client mengenkripsi koneksi dan memvalidasi instans RDS. Verify-Full — client mengenkripsi koneksi, memvalidasi instans RDS, dan memverifikasi apakah CN atau DNS yang ditentukan dalam sertifikat CA server sesuai dengan nilai Host name/address. Root certificate Diperlukan ketika SSL mode diatur ke Verify-CA atau Verify-Full. Atur ke path file PEM yang diunduh pada langkah 2 (misalnya, D:\CA\aliyunCA\).Klik Save. Jika detail koneksi benar, pgAdmin akan berhasil terhubung ke instans tersebut.
PentingDatabase
postgresadalah database sistem. Jangan menjalankan operasi apa pun di dalamnya.
Untuk metode koneksi tambahan (klien baris perintah psql, Java JDBC, dan lainnya), lihat Hubungkan ke instans ApsaraDB RDS for PostgreSQL melalui koneksi SSL.
Langkah selanjutnya
Konfigurasi custom certificate pada instans ApsaraDB RDS for PostgreSQL — untuk melindungi beberapa titik akhir sekaligus atau menggunakan sertifikat yang ditandatangani oleh CA milik Anda.
Konfigurasi client CA certificate pada instans ApsaraDB RDS for PostgreSQL — agar server dapat mengautentikasi klien.
Hubungkan ke instans ApsaraDB RDS for PostgreSQL melalui koneksi SSL — untuk contoh koneksi menggunakan JDBC dan klien lainnya.