Re: Add "password_protocol" connection parameter to libpq - Mailing list pgsql-hackers

From Jeff Davis
Subject Re: Add "password_protocol" connection parameter to libpq
Date
Msg-id a977da04af60668c487a7a21abbcbb87b9ea8344.camel@j-davis.com
Whole thread Raw
In response to Re: Add "password_protocol" connection parameter to libpq  (Heikki Linnakangas <hlinnaka@iki.fi>)
Responses Re: Add "password_protocol" connection parameter to libpq  (Stephen Frost <sfrost@snowman.net>)
Re: Add "password_protocol" connection parameter to libpq  ("Jonathan S. Katz" <jkatz@postgresql.org>)
List pgsql-hackers
On Sat, 2019-08-10 at 00:17 +0300, Heikki Linnakangas wrote:
> This is a multi-dimensional problem. "channel_binding=require" is
> one 
> way to prevent MITM attacks, but sslmode=verify-ca is another. (Does 
> Kerberos also prevent MITM?) Or you might want to enable plaintext 
> passwords over SSL, but not without SSL.
> 
> I think we'll need something like the 'ssl_ciphers' GUC, where you
> can 
> choose from a few reasonable default rules, but also enable/disable 
> specific methods:

..

> auth_methods = 'MITM, -password, -md5'

Keep in mind this is client configuration, so something reasonable in
postgresql.conf might not be so reasonable in the form:

postgresql://foo:secret@myhost/mydb?auth_methods=MITM%2C%20-
password%2C%20-md5

Another thing to consider is that there's less control configuring on
the client than on the server. The server will send at most one
authentication request based on its own rules, and all the client can
do is either answer it, or disconnect. And the SSL stuff all happens
before that, and won't use an authentication request message at all.

Some protocols allow negotiation within them, like SASL, which gives
the client a bit more freedom. But FE/BE doesn't allow for arbitrary
subsets of authentication methods to be negoitated between client and
server, so I'm worried trying to express it that way will just lead to
clients that break when you upgrade your server.

Regards,
    Jeff Davis





pgsql-hackers by date:

Previous
From: Thomas Munro
Date:
Subject: Re: Locale support
Next
From: Stephen Frost
Date:
Subject: Re: Add "password_protocol" connection parameter to libpq