Позднее, в версии PostgreSQL 14, значение password_encryption по умолчанию было изменено с md5 на scram-sha-256
При подготовке системы к миграции на новую основную версию PostgreSQL или при переносе базы данных на новый сервер, администратору необходимо учесть наличие паролей пользователей md5 по хранящимся в БД хешам паролей в таблице системного каталога pg_authid
Если в системе присутствуют пароли md5, то, как описано в документации, для облегчения их перевода на scram-sha-256, следует:
- Задать password_encryption = 'scram-sha-256' в postgresql.conf
- Указать метод аутентификации md5 в pg_hba.conf (для паролей scram произойдёт автоматический переход к использованию scram-sha-256, поэтому они тоже будут работать)
- Добиться, чтобы все пользователи с паролями md5 сменили свои пароли
- Затем поменять указание метода аутентификации в pg_hba.conf на scram-sha-256
Также администратор может автоматизировать получение команд создания пользователей с паролями на исходном сервере, воспользовавшись утилитой pg_dumpall с параметром -g (--globals-only)
Пример:
Код: Выделить всё
pg_dumpall -g >db.out