postgresql Смена способа авторизации (peer, md5) в Ubuntu Linux

Forums:

Типы авторизации

  • peer -- логиниться без пароля, если клиент запущен от имени пользователя, тип авторизации для которого указан как peer, именно для этого случая работает команда вида:
    sudo -u postgres psql
  • md5 -- использует пароль установленный внутри постгреса, для пользователя, который будет указан напр. после флага -U в команде:
    psql -U postgres

Подробнее о других методах: https://www.postgresql.org/docs/11/clien...

Как сменить тип авторизации

Правим конфиг, например:

sudo nano /etc/postgresql/11/main/pg_hba.conf 

Смысл в том, чтобы сменить авторизацию типа peer на md5 для юзера postgres, например для этого можно поправить строку:

# Database administrative login by Unix domain socket
local   all             postgres                                peer

на

# Database administrative login by Unix domain socket
local   all             postgres                                md5

-- это чисто для пользователя postgres, т.е. теперь мы будет подключаться не просто без пароля, если запустим процесс под одноименным системным пользователем, но и если команду дает другой пользователь.

Можно было аналогично поправить и строку:

# "local" is for Unix domain socket connections only
local   all             all                                     peer

-- тут вообще для всех пользователей.

Ну и перезапускаем службу, напр. в убунту:

sudo service postgresql restart

Источники:

Key Words for FKN + antitotal forum (CS VSU):