Файл .pgpass для более чем одного пользователя - PullRequest
0 голосов
/ 18 сентября 2018

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

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

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

Я работаю в Ubuntu 18.04 и мне нужны root & www-data, чтобы получить файл .pgpass.conf.

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

1 Ответ

0 голосов
/ 18 сентября 2018

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

И просто сделайте , а не установите PGPASSFILE на всех. Руководство:

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

И:

passfile

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

Related:

...