web-dev-qa-db-ja.com

psqlにクライアント証明書を指定するにはどうすればよいですか?

ログインにクライアント証明書が必要なユーザーdevを使用するPostgresサーバーがあります。コマンドpsql "sslmode=require user=dev Host=db.prod"を使用しています。これにより、psql: FATAL: connection requires a valid client certificateが表示されます。

証明書がサーバーのどこにあるか知っています。私の質問は、クライアント証明書の場所をpsqlに指定するにはどうすればよいですか?

10
Jorn

@Milenによってリンクされたドキュメントで述べられているように、PGSSLCERTおよびPGSSLKEY環境変数を設定するか、sslcert=<cert location> sslkey=<key location>を接続文字列に。

8
Jorn

最終結果は$>psql "port=5431 Host=localhost user=postgres sslcert=./test/client.crt sslkey=./test/client.key sslrootcert=./test/server.crt sslmode=verify-ca"のようになります

すべての変数は here です。

8
Olivier D