13

我编辑pg_hba.conf

sudo su postgres
nano /etc/postgresql/10/main/pg_hba.conf

并添加了这一行:

local   all             username                               scram-sha-256

并将所有更改md5为该scram-sha-256文件中的所有内容。

作为postgres用户,我创建了一个具有超级用户权限的新用户:

sudo su postgres
psql

CREATE USER username WITH SUPERUSER PASSWORD 'password';

然后我重新启动了 Postgres:

/etc/init.d/postgresql restart

并尝试使用 pgAdmin4 登录,我在数据库的 Connection 属性下更改了用户名。但这既不是psql -U username testdb < ./testdb.sql我得到的工作,也不是:

致命:用户“用户名”的密码验证失败

那么如何让 Postgres 在我的 Debian9/KDE 机器上使用 scram-sha-256 呢?当我把所有的东西都留md5pg_hba.conf原样时,它更早地起作用了。

4

1 回答 1

18

精美的手册说:

要将现有安装从 升级md5scram-sha-256,在确保使用的所有客户端库都足够新以支持 SCRAM 后,设置password_encryption = 'scram-sha-256'postgresql.conf,让所有用户设置新密码,并将身份验证方法规范更改pg_hba.confscram-sha-256

于 2018-11-20T21:12:56.977 回答