On Wed, May 6, 2015 at 4:47 PM, Alvaro Herrera <alvhe...@2ndquadrant.com>
wrote:

> Robert Haas wrote:
>
> > I frankly find that a bit difficult to swallow.  You think that
> > everyone knows that bad passwords are a problem, but some people might
> > not realize that an authentication method called "trust" might not be
> > secure?
>
> Ultimately, what we offer to users is choice of a few options.  Should
> we only offer options that we consider to be completely secure, and no
> others?  If we were to follow that principle, we would completely
> disable non-SSL builds, and all auth methods other than, I dunno, GSSAPI
> and such.  But we don't do that, because we trust that users will use
> whatever is most appropriate for them.  I see this patch is, in a way, a
> mechanism to let system administrators choose at compile time what
> options are available to DBAs at setup time.  This seems a reasonable
> thing to me.
>
>
Yes in fact, it would be a way for organizations distributing their own
PostgreSQL packages to enforce authentication restrictions within the
package instead of having to educate all users about the options.


> I don't necessarily agree with the patch as proposed.  I would rather
> have a comma-separated list of methods, as in:
>
>     --disable-auth=ident,peer
>


Something more general like that would be even better, and when reading the
comments below perhaps also the option to differentiate between local and
remote authentication. I will look into this and see if we could update the
patch to a more generic option in case people here agree that it is
worthwhile.

I would be adding additional options:

   --disable-remote-auth=ident,trust
   --disable-local-auth=trust

And would check that there is a warning about the password reset
restrictions in case both peer and trust (and on Windows?) are disabled.



>
> which lets you choose what to disable without hardcoded choices.  Due to
> the nature of autoconf, this might be too fiddly to implement, though,
> and if so I think the method proposed by this patch seems a reasonable
> compromise.  I've seen configure in other programs offer options such as
> --disable-foo=list that lists acceptable values (or --disable-foo=help)
>
> --
> Álvaro Herrera                http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
>

Reply via email to