У тебя сейчас записанно что могут коннектится только убунтовские юзеры которые есть на виртуалке с их логинами/паролями.
Поменяй в pg_hba.conf вторую строчку
#это чтобы логиниться с локалхоста просто из под юзера postgres
local all all peer
#это чтобы логиниться под другими пользователями по логину паролю
host all all 0.0.0.0/0 md5
Потом добавляешь в пгадмине роль входа которую хотел использовать. Даешь ей всяких прав и пользуешься.
Для того, что бы разрешить авторизацию в базу пользователей без проверки паролей, необходимо прописать в pg_hba метод авторизации «trust» (последний параметр в строке pg_hba). Это удобно для разного рода автоматизаций, например импорта в postgresql данных osm, периодической обработки данных по расписанию и т.д. Но это и большая дыра в безопасности, поскольку пароль при методе «trust» вообще не проверяется, по этому если и использовать его, то лучше ограничиться только разрешением в пределах локального компьютера и только на конкретную базу и пользователя.
Так же, многие путаются с авторизацией на локальном компьютере, забывая, что для localhost существует минимум два метода:
через сетевое соединение с локальным сетевым адресом (адресом любого интерфейса либо 127.0.0.1)
через локальный socket
Для первого метода необходимо указать тип соединения «host» в pg_hba, а для второго соединения через локальный сокет, минуя сетевую инфраструктуру тип «local». И соединение «pgsql -h localhost» — это именно соединение через сокет, а не через сеть.
Поэтому, если нам надо что бы все и всегда, включая локальную авторизацию, авторизовывались по пользователям и паролям из самой базы, а не из ОС, то необходимо прописать:
# с localhost, используя локальный unix-socket
local all all md5
# с localhost, используя tcp/ip 4 и 6 (для каждого своя настройка)
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
# с любого адреса в сети, кроме локального компьютера, через IPv4
host all all 0.0.0.0/0 md5
Для локальной авторизации без пароля, пользователя «user1» в базу «base1» нужно прописать первым правило:
local base1 user1 trust
Методов авторизации по паролям два: «md5» и «password», второй отличается от первого тем, что пароль передаётся открытым текстом. По умолчанию раньше использовался именно «password».
Добрый день. Дабы не создавать пост, напишу здесь. Дано: поднятый тайловый сервер по мануалу с switch2osm.org, собственно тайлы отрисовывает и складывает в папочку, НО когда появляются изменения в базе postgresql, тайлы не регенерятся, а остаются старые, т.е. на карте изменений не видно, пока вручную не удалим папку со старыми тайлами. Не подскажете как решить такую проблему? Заранее спасибо.
dkiselev
Спасибо, подробное объяснение по авторизации очень пригодится. Я опасался что мои игры с паролями могут впоследствии вылиться в сложности при применении диффов.
Вокруг много place=city, но только Колпино проявляется через зум послес С.П-б и Москвы, и только ещё через три зума появляются названия других городов.
Петрозаводск на месте, а все остальное, включая Выборг - это town, а не city.
Так одно дело - Колпинский район, а другое - само Колпино. А вот с city/town у точки/границы есть проблема, да. Это проблема массовая, издержки дублирования данных.
Какие из них city, например? Петрозаводск есть дальше, он на ваш скрин не попал.
У меня есть выгрузка всех н.п. place 2-х месячной давности. Рядом с Питером place=city такие (по удалению): Колпино, Великий Новгород, Лаппеэнранта и Псков. Дальше уже Петрозаводск, Тарту, Великие Луки, Тверь и т.п.
town - это уже исправили после того, как я написал.