我在pgadmin4:
中创建了一个密码管理员用户CREATE USER admin WITH
LOGIN
SUPERUSER
CREATEDB
CREATEROLE
INHERIT
REPLICATION
CONNECTION LIMIT -1
PASSWORD 'xxxxxx';
但是我可以使用admin用户和任何错误的密码登录到相应的服务器。 我使用psql命令行来检查用户是否已创建,它是。
# SELECT usename FROM pg_user;
usename
------------
postgres
xxxxxxxxxxx
admin
(3 rows)
我检查了是否可以通过psql命令行使用admin用户和错误的密码登录,并且它有效...
我做错了吗?
Pgadmin4 v1.1
Postgresql v9.6
Centos 6.8和macOSX 19.12.1
答案 0 :(得分:3)
这是猜测,但这是受过教育的猜测,因为我遇到了类似的问题。
如果您的pg_hba.conf
文件,我非常有信心您将管理员用户设置为“信任”。这几乎意味着它可以从您指定的任何地方登录,无需密码。
如果将其更改为“md5”,则应解决此问题。
# TYPE DATABASE USER ADDRESS METHOD
host all admin <whatever> trust
更改为
host all admin <whatever> md5
当然,其中一些字段可能会有所不同,具体取决于您设置服务器的方式,但您明白了这一点。