从我在pg_hba.conf中读到的内容,我推断,为了确保我提示为postgres用户输入密码,我应该编辑pg_hba.conf的前两个条目'来自当前同行的方法密码'密码'或者' md5',但如果错误的话,我不想破坏它。我是在正确的轨道上吗?或者遗漏了一些明显的东西?
无论如何,更多细节 -
在debian上安装postgres 9.4之后,我改变了postgres用户的密码 -
postgres=# \password postgres
...并输入两次新密码。
然后我退出postgres(Ctrl + D),然后从bash重新启动服务器 -
sudo service postgresql restart
当我重新登录postgres(sudo -u postgres psql)时,我没有提示输入新密码。我得到 -
psql (9.4.9)
Type "help" for help
postgres=#
此外,.pgpass文件位于我的主目录中,但它是空的。最后,前两行pg_hba.conf是
local all postgres [blank] peer
local all all [blank] peer
答案 0 :(得分:3)
设置密码仅提供需要它的身份验证方法的密码。它没有添加为登录指定密码的要求。
是否需要密码由pg_hba.conf
控制。 peer
身份验证模式不需要密码,如果用户的unix用户名与他们尝试连接的postgres用户名相同,则允许用户登录。
如果您想要密码验证,请尝试md5
身份验证。