5
Подключение
1. Строки pg_hba.conf просматриваются сверху вниз
2. Выбирается первая запись, которой соответствуют
параметры подключения (тип, база, пользователь и адрес)
# TYPE DATABASE USER ADDRESS METHOD
local all postgres peer
local all all peer
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
local — сокет all — любая роль
host — TCP/IP имя роли
all — любая БД all — любой IP
имя БД IP/маска
доменное имя
listen_addresses
Для каждого нового клиента сервер определяет, надо ли разрешить
подключение к базе данных. Настройки подключения определяются
в конфигурационном файле pg_hba.conf («host-based authentication»).
Как и с основным конфигурационным файлом postgresql.conf,
изменения вступают в силу только после перечитывания файла
сервером (SELECT pg_reload_conf() в SQL, либо pg_ctl reload из
операционной системы).
При появлении нового клиента сервер просматривает конфигурацион-
ный файл сверху вниз в поисках строки, подходящей к запрашиваемо-
му клиентом подключению. Соответствие определяется по четырем
полям: типу подключения, имени БД, имени пользователя и IP-адресу.
Ниже перечислены только самые основные возможности.
Подключение — local (unix-сокеты, не доступно в Windows) или host
(подключение по протоколу TCP/IP).
База данных – ключевое слово all (соответствует любой БД) или имя
конкретной базы данных.
Пользователь — all или имя конкретной роли.
Адрес — all, конкретный IP-адрес с маской или доменное имя. Не
указывается для типа local. По умолчанию PostgreSQL слушает
входящие соединения только с localhost; обычно параметр
listen_addresses ставят в значение «*» (слушать все интерфейсы)
и дальше регулируют доступ средствами pg_hba.conf.