Yun*_*i.W 7 postgresql postgresql-9.1
我发现我的posgresql数据库服务器postgres在通过pgadmin进行远程连接时没有要求用户输入密码.我的意思是当我通过pgAdmin从本地计算机连接到远程数据库服务器时.
我在psql中添加了密码ALTER USER postgres PASSWORD 'mypassword'.
这是我的pg_hba.config文件:
/usr/local/pgsql/bin/psql -qAt -c "show hba_file" | xargs grep -v -E '^[[:space:]]*#'
local all all trust
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
host all all ::1/128 md5
Run Code Online (Sandbox Code Playgroud)
所以,我不太明白这里发生了什么.
有人能帮忙吗?
非常感谢.
更新:
如果我改变:
local all all trust
Run Code Online (Sandbox Code Playgroud)
至
local all all md5
Run Code Online (Sandbox Code Playgroud)
现在,将要求本地连接(通过SSH)输入密码(之前没有要求输入密码.)但是远程连接仍然会在没有密码的情况下连接.
实际上,我尝试通过来自另一台服务器的rails appliaction连接到这个数据库服务器,没有密码,并且rails服务器启动没有问题.
为了方便起见,在这里取得了成果
这个问题的真正原因是.pgpass文件.Mac将密码本地存储.pgpass在用户主文件夹下的文件中.然后,每当用户尝试在没有密码的情况下登录时,PostgreSQL将为用户发送密码.
官方文件在这里
| 归档时间: |
|
| 查看次数: |
5867 次 |
| 最近记录: |