[root@sourcedb ~]# su - highgo
[highgo@sourcedb ~]$ cd $PGDATA
[highgo@sourcedb data]$ cat pg_hba.conf
# "local" is for Unix domain socket connections only
local all all trust ----此处为trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.6.10/24 md5
# IPv6 local connections:
host all all ::1/128 md5
host all all 0.0.0.0/0 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication highgo md5
#host replication highgo 127.0.0.1/32 md5
#host replication highgo ::1/128 md5
host replication highgo 192.168.6.0/24 trust
[highgo@sourcedb data]$ psql
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ psql -W
Password: ---此时随便输入任何内容都可以进入
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ psql -W
Password:
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ vi pg_hba.conf
# "local" is for Unix domain socket connections only
local all all md5 ---此处修改为md5
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.6.10/24 md5
# IPv6 local connections:
host all all ::1/128 md5
host all all 0.0.0.0/0 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication highgo md5
#host replication highgo 127.0.0.1/32 md5
#host replication highgo ::1/128 md5
host replication highgo 192.168.6.0/24 trust
"pg_hba.conf" 92L, 4424C written
[highgo@sourcedb data]$ pg_ctl reload
server signaled
[highgo@sourcedb data]$ psql
Password:
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ psql -W --此处输入错误密码或者随意输入
Password:
psql: 致命错误: 用户 "highgo" Password 认证失败
[highgo@sourcedb data]$ psql -W
Password:
psql: 致命错误: 用户 "highgo" Password 认证失败
[highgo@sourcedb data]$
在postgresql内部,是否验证密码是通过pg_hba.conf文件中的METHOD这个字段识别的,MD5和PASSWORD是验证密码的,如果设置为TRUST,pg直接跳过密码验证,所以即使前端带有-W选项,在内部pg也是不验证密码的。
[highgo@sourcedb ~]$ cd $PGDATA
[highgo@sourcedb data]$ cat pg_hba.conf
# "local" is for Unix domain socket connections only
local all all trust ----此处为trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.6.10/24 md5
# IPv6 local connections:
host all all ::1/128 md5
host all all 0.0.0.0/0 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication highgo md5
#host replication highgo 127.0.0.1/32 md5
#host replication highgo ::1/128 md5
host replication highgo 192.168.6.0/24 trust
[highgo@sourcedb data]$ psql
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ psql -W
Password: ---此时随便输入任何内容都可以进入
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ psql -W
Password:
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ vi pg_hba.conf
# "local" is for Unix domain socket connections only
local all all md5 ---此处修改为md5
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.6.10/24 md5
# IPv6 local connections:
host all all ::1/128 md5
host all all 0.0.0.0/0 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication highgo md5
#host replication highgo 127.0.0.1/32 md5
#host replication highgo ::1/128 md5
host replication highgo 192.168.6.0/24 trust
"pg_hba.conf" 92L, 4424C written
[highgo@sourcedb data]$ pg_ctl reload
server signaled
[highgo@sourcedb data]$ psql
Password:
psql (3.1.4)
Type "help" for help.
highgo=# \q
[highgo@sourcedb data]$ psql -W --此处输入错误密码或者随意输入
Password:
psql: 致命错误: 用户 "highgo" Password 认证失败
[highgo@sourcedb data]$ psql -W
Password:
psql: 致命错误: 用户 "highgo" Password 认证失败
[highgo@sourcedb data]$
在postgresql内部,是否验证密码是通过pg_hba.conf文件中的METHOD这个字段识别的,MD5和PASSWORD是验证密码的,如果设置为TRUST,pg直接跳过密码验证,所以即使前端带有-W选项,在内部pg也是不验证密码的。