Allow root-owned SSL private keys in libpq, not only the backend.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 28 Feb 2022 19:12:52 +0000 (14:12 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 28 Feb 2022 19:12:52 +0000 (14:12 -0500)
commita59c79564bdc209a5bc7b02d706f0d7352eb82fa
tree6747e1efc71844c5920b3213161d1545bd89753e
parent12d768e70497afc5a57acf73c251316997b5175a
Allow root-owned SSL private keys in libpq, not only the backend.

This change makes libpq apply the same private-key-file ownership
and permissions checks that we have used in the backend since commit
9a83564c5.  Namely, that the private key can be owned by either the
current user or root (with different file permissions allowed in the
two cases).  This allows system-wide management of key files, which
is just as sensible on the client side as the server, particularly
when the client is itself some application daemon.

Sync the comments about this between libpq and the backend, too.

David Steele

Discussion: https://postgr.es/m/f4b7bc55-97ac-9e69-7398-335e212f7743@pgmasters.net
src/backend/libpq/be-secure-common.c
src/interfaces/libpq/fe-secure-openssl.c