Cada hash de senha de usuário é salvo na tabela
pg_authid
. Ele inclui o algoritmo de hash usado para transformar a senha em seu hash. Ao definir a
password_encryption
no postgresql.conf, você está configurando a criptografia padrão, ou seja, aquela usada ao criar um usuário ou ao (re)configurar sua senha. A tabela pg_authid
é não Atualizada. Ao alterar o pg_hba.conf, você está dizendo para aceitar apenas senhas com hash usando o método fornecido. A tabela
pg_authid
é não Atualizada. Há uma observação importante no doc :
Então a solução é
- comece com os usuários existentes, md5
- atualize postrgres.conf para usar scram e recarregue a configuração
- redefinir a senha do usuário:agora ela será salva como scram em pg_authid
- você ainda pode usar md5 em pg_hba.conf
- quando estiver satisfeito com a mudança de md5 para scram, atualize pg_hba.conf para especificar scram em vez de md5