Každý hash hesla uživatele je uložen v tabulce pg_authid
. Zahrnuje hashovací algoritmus, který se používá k transformaci hesla na jeho hash.
Při nastavování password_encryption
v postgresql.conf nastavujete výchozí šifrování, tedy takové, které se používá při vytváření uživatele nebo při (znovu)nastavování hesla. Tabulka pg_authid
není aktualizováno.
Při změně pg_hba.conf říkáte, že chcete přijímat pouze hesla hašovaná pomocí dané metody. Tabulka pg_authid
není aktualizováno.
V dokumentu je důležitá poznámka :
Řešením je tedy
- začněte se stávajícími uživateli, md5
- aktualizujte postrgres.conf, aby používal scram, a znovu načtěte konfiguraci
- resetujte uživatelské heslo:nyní bude uloženo jako scram v pg_authid
- v pg_hba.conf můžete stále používat md5
- až budete spokojeni s přechodem z md5 na scram, aktualizujte pg_hba.conf tak, aby specifikoval scram místo md5