4.6.1.2.3.1.1. Примеры настройки конфигурационного файла
Позволяет любому пользователю локальной системы подключаться к любой базе данных, используя любое имя пользователя баз данных, через Unix-сокеты (по умолчанию для локальных подключений).
# TYPE DATABASE USER ADDRESS METHOD
local all all trust
|
То же, но для локальных замкнутых подключений по TCP/IP.
# TYPE DATABASE USER ADDRESS METHOD
host all all 127.0.0.1/32 trust
|
То же, что и в предыдущем примере, но с указанием сетевой маски в отдельном столбце
# TYPE DATABASE USER ADDRESS IP-MASK METHOD
host all all 127.0.0.1 255.255.255.255 trust
|
То же для IPv6.
# TYPE DATABASE USER ADDRESS METHOD
host all all ::1/128 trust
|
То же самое, но с использованием имени компьютера (обычно покрывает и IPv4, и IPv6).
# TYPE DATABASE USER ADDRESS METHOD
host all all localhost trust
|
Позволяет любому пользователю любого компьютера с IP-адресом 192.168.93.x подключаться к базе данных "postgres" с именем, которое сообщает для данного подключения ident (как правило, имя пользователя операционной системы).
# TYPE DATABASE USER ADDRESS METHOD
host postgres all 192.168.93.0/24 ident
|
Позволяет любому пользователю компьютера 192.168.12.10 подключаться к базе данных "postgres", если он передаёт правильный пароль.
# TYPE DATABASE USER ADDRESS METHOD
host postgres all 192.168.12.10/32 scram-sha-256
|
Позволяет любым пользователям с компьютеров в домене example.com подключаться к любой базе данных, если передаётся правильный пароль. Для всех пользователей требуется аутентификация SCRAM, за исключением пользователя 'mike', который использует старый клиент, не поддерживающий аутентификацию SCRAM.
# TYPE DATABASE USER ADDRESS METHOD
host all mike .example.com md5
host all all .example.com scram-sha-256
|
В случае отсутствия предшествующих строчек с "host", следующие две строки откажут в подключении с 192.168.54.1 (поскольку данная запись будет выбрана первой), но разрешат подключения GSSAPI с любых других адресов. С нулевой маской ни один бит из IP-адреса компьютера не учитывается, так что этой строке соответствует любой компьютер.
# TYPE DATABASE USER ADDRESS METHOD
host all all 192.168.54.1/32 reject
host all all 0.0.0.0/0 gss
|
Позволяет пользователям с любого компьютера 192.168.x.x подключаться к любой базе данных, если они проходят проверку ident. Если же ident говорит, например, что это пользователь "bryanh" и он запрашивает подключение как пользователь Postgres Pro "guest1", подключение будет разрешено, если в файле pg_ident.conf есть сопоставление "omicron", позволяющее пользователю "bryanh" подключаться как "guest1".
# TYPE DATABASE USER ADDRESS METHOD
host all all 192.168.0.0/16 ident map=omicron
|
Если для локальных подключений предусмотрены только эти три строки, они позволят локальным пользователям подключаться только к своим базам данных (базам данных с именами, совпадающими с именами пользователей баз данных), кроме администраторов или членов роли "support", которые могут подключиться к любой БД. Список имён администраторов содержится в файле $PGDATA/admins. Пароли запрашиваются в любом случае.
# TYPE DATABASE USER ADDRESS METHOD
local sameuser all md5
local all @admins md5
local all +support md5
|
Последние две строчки в примере выше могут быть объединены в одну:
# TYPE DATABASE USER ADDRESS METHOD
local all @admins,+support md5
|
В столбце DATABASE могут указываться списки и имена файлов:
# TYPE DATABASE USER ADDRESS METHOD
local db1,db2,@demodbs all md5
|