sql >> データベース >  >> RDS >> PostgreSQL

SSL経由でPostgreSQLデータベースに接続するにはどうすればよいですか?

    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証明書が必要になる場合があることに注意してください。

    次のようなさまざまなオプションがあります(網羅的ではないかもしれませんが、これらは私にとってはうまくいきました)。

    1. デフォルトの場所、つまり〜/ Postgres/root.crtまたは
    2. に配置できます。
    3. PGSSLROOTCERTを設定します パスへの環境変数OR
    4. トラストストアにインポートし、パスを次のように渡します:-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



    1. *アラート*WindowsUpdateは純粋なAccessアプリケーションを壊します–修正が利用可能です

    2. PostgreSQLサーバーを実行せずにPostgreSQLデータベースを初期化する方法

    3. Mysqldump:バックアップ時に挿入の列名を作成します

    4. MySQL TIMEDIFFを秒なしでフォーマットするにはどうすればよいですか?