|
|
|
|
|
by travjones
3656 days ago
|
|
Excellent post. The post doesn't detail a problem with Postgres per se, rather the author uses plain language to explain Postgres' TLS connection mechanisms and how they are applied in AWS and Heroku RDBMS services. When quickly iterating on software, I must admit I don't always consider configuring a root cert for the db. This nuanced look at Postgres' security options gives me much to consider for real production work. tl;dr: configure a root cert for your Postgres db and use verify-full in your connection string. |
|
Edit: The interpretation below is incorrect, see the answers to understand why.
I don't understand why the post insists on using self signed certificates and ?sslmode=verify-*. It's MitM-prone by design.
Just use ?sslmode=require and a CA-issued certificate. It's even easier than with a webserver and clients can identify that you are the domain you pretend to be. Obviously Postgres did it wrong by being to lazy to deploy normal certificates for all dbs.
"Verify" is only with client certs, which are difficult to issue and install, and allows the server to identify the client.
Am I correct?