url=jdbc:postgresql://<host_url_or_ip>:<port>/<db_name>?currentSchema=<schema_name>&sslmode=verify-ca&sslfactory=org.postgresql.ssl.DefaultJavaSSLFactory
注:schema_name
の場合 public
です 、必須ではありません。ただし、デフォルト(5432)の場合でも、ポートを指定する必要があります。
sslmode値の場合ref: https://jdbc.postgresql.org/documentation/ head / ssl-client.html
sslfactory=org.postgresql.ssl.DefaultJavaSSLFactory
を設定します 検証を有効にします。
非検証のSSL接続の場合は、sslfactory=org.postgresql.ssl.NonValidatingFactory
を使用できます。
ただし、SSL検証を有効にすると、ルートCA証明書が必要になる場合があることに注意してください。
次のようなさまざまなオプションがあります(網羅的ではないかもしれませんが、これらは私にとってはうまくいきました)。
- デフォルトの場所、つまり〜/ Postgres/root.crtまたは に配置できます。
-
PGSSLROOTCERT
を設定します パスへの環境変数OR - トラストストアにインポートし、パスを次のように渡します:
-Djavax.net.ssl.trustStore=[trust_store_path] -Djavax.net.ssl.trustStorePassword=[trust_store_password]
。デフォルトのトラストストア、つまりJREのcacerts
を使用している場合 これらの2つの環境変数は必要ありません。
参照:
https://jdbc.postgresql.org/documentation/head/ssl-client .html
https://www.postgresql.org/docs/9.0/libpq-ssl .html