PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Bagaimana cara terhubung dengan database PostgreSQL melalui SSL?

url=jdbc:postgresql://<host_url_or_ip>:<port>/<db_name>?currentSchema=<schema_name>&sslmode=verify-ca&sslfactory=org.postgresql.ssl.DefaultJavaSSLFactory

Catatan:jika schema_name adalah public , itu tidak wajib. Tetapi port meskipun default yaitu 5432, Anda harus menyediakannya.

Untuk nilai sslmode ref:https://jdbc.postgresql.org/documentation/ head/ssl-client.html atur sslfactory=org.postgresql.ssl.DefaultJavaSSLFactory untuk mengaktifkan validasi.

Untuk koneksi ssl yang tidak memvalidasi, Anda dapat menggunakan sslfactory=org.postgresql.ssl.NonValidatingFactory

Tapi ingat, setelah Anda mengaktifkan validasi SSL, itu mungkin memerlukan sertifikat CA root.

Anda memiliki berbagai opsi sebagai berikut (mungkin tidak lengkap. tetapi ini berhasil untuk saya.)

  1. Anda dapat menempatkannya di tempat default yaitu ~/Postgres/root.crt ATAU
  2. Setel PGSSLROOTCERT variabel env ke jalurnya ATAU
  3. impor ke truststore dan berikan jalurnya sebagai:-Djavax.net.ssl.trustStore=[trust_store_path] -Djavax.net.ssl.trustStorePassword=[trust_store_password] . Jika Anda menggunakan truststore default yaitu cacerts JRE dua variabel env ini tidak diperlukan.

Referensi:

https://jdbc.postgresql.org/documentation/head/ssl-client .html

https://www.postgresql.org/docs/9.0/libpq-ssl .html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara meningkatkan ke PostgreSQL 11 untuk Ubuntu 18.04?

  2. Minggu di antara dua tanggal

  3. PostgreSQL:ST_GeomFromText(tidak diketahui) tidak ada

  4. Bagaimana Anda membuat Python / PostgreSQL lebih cepat?

  5. Menggunakan Fungsi Postgres JSON pada kolom tabel