I created a user john with createuser and didn't supply any passwords for it, i.e. no -P option specified. I then proceeded to add the following line above all other lines in the pg_hba.conf file:

host    all             john              trust

I then restarted the server but even after that, when I try to run psql -U john it keeps asking for a password. I even ran the command psql -c "alter role john with password null;" but it changed nothing. PostgreSQL keeps asking for a password for john. What am I missing?

Running PostgreSQL 13.2 on Windows 10.


By checking the logs, it got apparent that PostgreSQL was matching the ::1/128 IPv6 address, which had scram-sha-256 as its authentication method. adding a line like

host    all             john            ::1/128            trust

fixed the problem.

Also, there is no need for restarting the DBMS after changes to pg_hba.conf.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.