Файл.pgpass для более чем одного пользователя

Если я установлю PGPASSFILE на явный путь, как /home/user/.pgpass тогда он работает нормально и при входе в систему как пользователь, которому принадлежит этот файл, я могу использовать psql для записей в .pgpass.conf,

Проблема у меня заключается в том, что мне нужно иметь несколько учетных записей использовать PSQL. Если я изменю PGPASSFILE в каталог пользователя, как ~/.pgpass.conf тогда он не работает и не читает файл, поэтому выдает ошибку пароля.

Поскольку я могу указать только один файл, это означает, что только владелец этого файла может выполнять команды, которые мне нужны.

Я работаю на Ubuntu 18.04 и мне нужны root & www-data для .pgpass.conf файл.

Как мне это сделать?

1 ответ

Решение

Если у вас есть системные пользователи, соответствующие вашим пользователям БД (root а также www-data в вашем случае) у каждого своя, отдельная .pgpass файл в соответствующем домашнем каталоге. Установите каждый соответственно.

И просто не устанавливать PGPASSFILE совсем. Руководство:

PGPASSFILE ведет себя так же, как параметр соединения passfile.

А также:

passfile

Указывает имя файла, используемого для хранения паролей (см. Раздел 33.15). По умолчанию ~/.pgpass, или же %APPDATA%\postgresql\pgpass.conf в Microsoft Windows. (Об ошибке не сообщается, если этот файл не существует.)

Связанные с:

Другие вопросы по тегам