Din pg_hba.conf
burde faktisk kræve en adgangskode til unix-socket-forbindelser, men der er stadig måder rundt om det, som du bør verificere:
-
en
.pgpass
fil i postgres-hjemmemappen, der indeholder adgangskoden (tjek også PGPASSFILE miljøvariabel for en ikke-standard sti). -
PGPASSWORD miljøvariabel kunne indstilles.
Og der er også muligheden for, at du redigerer den forkerte pg_hba.conf-fil. Når den er tilsluttet som postgres, kan den korrekte sti opnås til verifikation med SHOW hba_file
SQL-kommando.
Det kan også være en god idé at tjekke logfilen, /var/log/postgresql/postgresql-9.1-main.log
for at bekræfte, at konfigurationsfilerne genindlæses, når du beder om det, og se efter enhver mistænkelig besked under godkendelsen.
Hvad angår grunden til, at adgangskodeløse forbindelser med postgres-brugeren er almindelige, er debian PG-9.1 pg_hba.conf
har denne kommentar om at nægte dem:
# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by Unix domain socket
local all postgres peer
Da Debian og Ubuntu bruger de samme postgres-pakker, gælder dette også for Ubuntu.