gpt4 book ai didi

PostgreSQL 用户密码从 MD5 更改为 scram-sha-265

转载 作者:行者123 更新时间:2023-11-29 13:12:07 27 4
gpt4 key购买 nike

我在看这个Change PostgreSQL password encryption from MD5 to SHA问题来弄清楚如何将 Postgres 中的用户密码哈希更改为 MD5 以外的其他内容,因为据我所知,它现在基本上已经过时了。

但我很好奇服务器的 pg_hpa.conf 文件是否需要根据本教程进行更改 https://blog.bigbinary.com/2016/01/23/configure-postgresql-to-allow-remote-connection.html您需要向其中添加以下内容:

host    all             all              0.0.0.0/0                       md5
host all all ::/0 md5

“md5”是否需要更改?还是纯粹是为了指定需要密码,哈希函数改成scram-sha-256不受影响?

最佳答案

即使将 password_encryption 更改为 scram-sha-256,也可以在 pg_hba.conf 中保留 md5 作为身份验证方法。这样做很不寻常。

它不寻常的主要原因是使用 password_encryption = scram-sha-256,客户端无论如何都必须了解新的散列方法才能根据输入的密码计算散列密码用户。那为什么不将它也用于更安全的身份验证呢?

为避免混淆,我想补充一点,PostgreSQL 中正在进行两种不同的密码哈希操作:

  1. 用户输入的密码(与用户名一起)被散列以生成实际的 PostgreSQL 密码,存储在 pg_authid 中。这是为了避免有人窃取密码并在其他系统上重复使用的问题。

  2. 在身份验证过程中,服务器会要求客户端使用特定的盐生成密码的哈希值(已在上一步中进行了哈希处理)。然后通过线路发送这个“双重散列”密码。

换句话说,您的问题是:我们能否对第一点使用 scram-sha-256,对第二点使用 md5

关于PostgreSQL 用户密码从 MD5 更改为 scram-sha-265,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53475347/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com