On Tue, Oct 11, 2016 at 4:20 PM Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
arnaud gaboury <arnaud.gaboury@xxxxxxxxx> writes:
> I am a little confused about some of my settings when it comes to map
> linux/psql users.
I think you're misunderstanding what the user-mapping stuff does.
It does not silently translate the username in the connection request
to something else; rather, it checks whether a user having the given
external name is allowed to log in as a particular Postgres user.
So there's nothing particularly wrong with your config files, but your
Then, if my files are correct, why can't I connect ?
% psql --dbname=mattermost --username=mmuser
psql: FATAL: Peer authentication failed for user "mmuser"
login with postgres is OK (pg_hba.conf settings: local all postgres trust):
% psql --dbname=mattermost --username=postgres
psql (9.5.4)
Type "help" for help.
mattermost=# \q
% psql --dbname=mattermost --username=mmuser
psql: FATAL: Peer authentication failed for user "mmuser"
login with postgres is OK (pg_hba.conf settings: local all postgres trust):
% psql --dbname=mattermost --username=postgres
psql (9.5.4)
Type "help" for help.
mattermost=# \q
I can't see why I can't connect as Postgresuser mmuser.
expectation about how your Linux users should log in to the database is
mistaken. dovecot needs to specify that it wants to log in as mailman,
and likewise mattermost needs to specify mmuser.
If it's not practical to make the client applications send non-default
user names, you'll need to rename the Postgres roles to match the
external user names.
regards, tom lane