27.13. Support de SSL

PostgreSQL dispose d'un support natif des connexions SSL pour crypter les connexions client/serveur et améliorer ainsi la sécurité. Voir la Section 16.8 pour des détails sur la fonctionnalité SSL côté serveur.

Si le serveur demande un certificat au client, libpq enverra le certificat stocké dans le fichier ~/.postgresql/postgresql.crt se trouvant à l'intérieur du répertoire personnel de l'utilisateur. Un fichier de la clé privée correspondante, ~/.postgresql/postgresql.key, doit aussi être présent et ne doit pas être lisible par tout le monde (sur les systèmes Microsoft Windows, ces fichiers sont nommés %APPDATA%\postgresql\postgresql.crt et %APPDATA%\postgresql\postgresql.key).

Si le fichier ~/.postgresql/root.crt est présent dans le répertoire personnel de l'utilisateur, libpq utilisera la liste de certificats stockés pour vérifier le certificat du serveur (sur les systèmes Microsoft Windows, le fichier est nommé %APPDATA%\postgresql\root.crt). La connexion SSL échouera si le serveur ne présente pas de certificat ; du coup, pour utiliser cette fonctionnalité, le serveur doit aussi avoir un fichier root.crt.