Pg
gem bruger libpq
internt, det samme klientbibliotek som PostgreSQL-værktøjerne som psql
.
Som standard libpq
ser i ~/.postgresql/
for CA-certifikatet.
Fra manualen :
... og ...
AFAIK Rails videregiver alt, hvad du lægger i din database.yml
til Pg
gem, som sender den til libpq
som en forbindelsesparameter. Så du burde være i stand til at tilføje nøgle/værdiindgange til din database.yml
strofer som:
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 kravet om at sende et enkelt rodcertifikat til libpq
er en designfejl. Det bør indlæse en pålidelig certifikatdatabase. Lignende problemer findes for brug af SSL-klientcertifikater, hvor du ikke kan levere et nøglelager og et certifikatlager, du skal videregive specifikke filer for en given vært. Det lyder som om, at det sandsynligvis er OK for dig, da du kender den opstrøms certifikatsigneringsautoritet.