La richiesta o meno di una password non ha nulla a che fare con pg_shadow
e se una password è effettivamente definita per l'utente. Sì, lo so, è strano.
pg_hba.conf
controlla il metodo di autenticazione. Se vuoi richiedere una password, usa md5
autenticazione. Se vuoi consentire l'accesso senza password a nessuno, usa trust
. Se vuoi richiedere lo stesso nome utente nel sistema operativo come in PostgreSQL, usa peer
(UNIX, solo per connessioni locali) o sspi
(Windows).
Se c'è una password impostata, ma pg_hba.conf
non dice a PostgreSQL di richiederla, la password viene ignorata.
Se pg_hba.conf
dice a PostgreSQL di chiedere una password ma non ce n'è nessuna impostata, quindi tutti i tentativi di accesso falliranno indipendentemente dalla password fornita.
L'utente postgres per impostazione predefinita non ha password. Per rimuovere una password utente (in questo caso per l'utente/ruolo postgres):
alter role postgres password null;
Dobbiamo anche impostare l'autenticazione su trust
in pg_hba.conf
- visualizza i dettagli