他のバージョンの文書 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

28.14. SSLサポート

PostgreSQLは、セキュリティを高めるためにクライアントサーバ間の通信を暗号化するSSL接続の使用を元来サポートしています。 サーバ側のSSL機能についての詳細は項16.7を参照してください。

サーバがクライアント証明に依存する場合、libpqはユーザのホームディレクトリにある~/.postgresql/postgresql.crtファイルに格納された証明書を送信します。 また、一致する~/.postgresql/postgresql.key秘密キーファイルも存在しなければならず、更に誰にでも読み取りできるような権限を付与してはなりません。 (Microsoft Windowsでは、このファイルの名前はそれぞれ%APPDATA%\postgresql\postgresql.crt%APPDATA%\postgresql\postgresql.keyです。)

サーバがクライアント証明に依存する場合、libpqはユーザのホームディレクトリにある~/.postgresql/postgresql.crtファイルに格納された証明書を送信します。 また、一致する~/.postgresql/postgresql.key秘密キーファイルも存在しなければならず、更に誰にでも読み取りできるような権限を付与してはなりません。 (Microsoft Windowsでは、このファイルの名前はそれぞれ%APPDATA%\postgresql\postgresql.crt%APPDATA%\postgresql\postgresql.keyです。) SSL接続は、サーバに証明書が存在しない場合は失敗します。 従って、この機能を使用するためにはサーバもroot.crtファイルを持たなければなりません。

もしアプリケーションでSSL(更にlibpq)を使用していたら、SSLライブラリをアプリケーションで初期化したことを libpq に知らせるのにPQinitSSL(int)を使用できるでしょう。