De Pg
gem gebruikt libpq
intern dezelfde clientbibliotheek als de PostgreSQL-tools zoals psql
.
Standaard libpq
zoekt in ~/.postgresql/
voor het CA-certificaat.
Uit de handleiding :
... en ...
AFAIK Rails geeft alles door wat u in uw database.yml
plaatst naar de Pg
gem, die het doorgeeft aan libpq
als verbindingsparameter. U zou dus sleutel/waarde-items moeten kunnen toevoegen aan uw database.yml
strofen zoals:
sslmode: verify-full
# and if you don't want to use ~/.postgresq/root.crt for the cert location, set:
sslrootcert: /path/to/my/app/root/cert.crt
IMO de vereiste om een enkel rootcertificaat door te geven aan libpq
is een ontwerpfout. Het zou een vertrouwde certificaatdatabase moeten laden. Soortgelijke problemen bestaan voor het gebruik van SSL-clientcertificaten, waar u geen keystore en cert store kunt opgeven, u moet specifieke bestanden doorgeven voor een bepaalde host. Het klinkt alsof dat waarschijnlijk in orde is voor u, aangezien u de upstream-autoriteit voor het ondertekenen van certificaten kent.