Issues with PAM : log that it failed, whether it actually failed or not

La Cancellera Yoann <lacancellera.yoann@gmail.com>

From: La Cancellera Yoann <lacancellera.yoann@gmail.com>
To: pgsql-general@postgresql.org
Date: 2019-10-11T08:38:58Z
Lists: pgsql-hackers, pgsql-general
Hi,



I am having issues with PAM auth :

it works, password are correctly checked, unknown users cannot access,
known user can, everything looks good



But, it always log an error by default even if auth is succesful:

2019-10-10 15:00:46.481 CEST [6109] LOG: pam_authenticate failed:
Authentication failure
2019-10-10 15:00:46.481 CEST [6109] FATAL: PAM authentication failed for
user "ylacancellera"
2019-10-10 15:00:46.481 CEST [6109] DETAIL: Connection matched pg_hba.conf
line 5: "local all all pam"
2019-10-10 15:00:46.481 CEST [6109] LOG: could not send data to client:
Broken pipe


And if auth is unsuccessful, it will log that very same message twice


My pg_hba is basically :

local           all        postgres                   peer

local           all        all                               pam


Any idea about this ? I suspect something is wrong

Thank you,

Commits

  1. Tweak some authentication debug messages to follow project style.

  2. Avoid logging complaints about abandoned connections when using PAM.