Size: a a a

pgsql – PostgreSQL

2020 July 21

VY

Victor Yegorov in pgsql – PostgreSQL
Eldar
ок. а если забыл его пароль в sudo
стать root-ом, сменить пароль postrges пользователю. но это может повлиять на других, кто помнит старый пароль и активно его использует
другой вариант — NOPASSWD опция в настройках sudo
источник

А

Александр in pgsql – PostgreSQL
Victor Yegorov
хочу заметить, что доступ к системному каталогу тоже выдан public-у, но отбирать его чревато
Как тогда лучше решить задачу «Конкретной роли доступ только к конкретной БД что бы ничего лишнего не было доступно»? Создать свою роль mybaserole которая будет урезана и ее наследовать?
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Александр
Как тогда лучше решить задачу «Конкретной роли доступ только к конкретной БД что бы ничего лишнего не было доступно»? Создать свою роль mybaserole которая будет урезана и ее наследовать?
права выдаются так:
- есть пользователи (с точки зрения базы, тоже роли, с возможностью подключения)
- есть объекты в базе
- создаются AccessControlList роли (а-ля mydb_ro, mydb_rw, mydb_dwh, mydb_security), им даются права на конкретные объекты
- создаются роли-групы (а-ля, Support, Operator, Security, Engineer) и им выдаются ACL-права
- роли-группы выдаются конкретным пользователям и определяют их возможности
(я обычно роли-группы пропускаю, слишком сложно.)
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Привет! Подскажите, пожалуйста:
1) Как понять кто ходит в Постгрю мимо pgbouncer (есть такое подозрение, исходя их того, что idle  в постгре в разы больше чем в pgbouncer)
2) С чего начать мониторинг постгри (и pgbouncer, если это требуется). Иструмент и метрики какие собирать примерно
Буду очень благодарен за любые ссылки, информацию, ориентацию в пространстве =) -я базами косвенно, но задача появилась и потерялся...
Спасибо.
источник

SB

Sergey Bezrukov in pgsql – PostgreSQL
Evgenii Zhuravlev
Привет! Подскажите, пожалуйста:
1) Как понять кто ходит в Постгрю мимо pgbouncer (есть такое подозрение, исходя их того, что idle  в постгре в разы больше чем в pgbouncer)
2) С чего начать мониторинг постгри (и pgbouncer, если это требуется). Иструмент и метрики какие собирать примерно
Буду очень благодарен за любые ссылки, информацию, ориентацию в пространстве =) -я базами косвенно, но задача появилась и потерялся...
Спасибо.
pg_stat_activity показывает ИП адреса, с которых установлено соединение
по мониторингу сейчас самое модное - графана, к ней есть postgres_exporter, вот неплохая статья:
https://habr.com/ru/post/501696/
источник

E

Eldar in pgsql – PostgreSQL
Victor Yegorov
стать root-ом, сменить пароль postrges пользователю. но это может повлиять на других, кто помнит старый пароль и активно его использует
другой вариант — NOPASSWD опция в настройках sudo
подскажите я поменял пароль пользователя в базе, но PgAdmin все равно коннектиться по старому паролю
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Eldar
подскажите я поменял пароль пользователя в базе, но PgAdmin все равно коннектиться по старому паролю
что подсказать? после смены пароля вы открыли новую сессию?
источник

AN

Alexander Nikitin in pgsql – PostgreSQL
надо в pg_hba.conf смотреть, может быть там вообще trust выставлен для этого хотса
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Sergey Bezrukov
pg_stat_activity показывает ИП адреса, с которых установлено соединение
по мониторингу сейчас самое модное - графана, к ней есть postgres_exporter, вот неплохая статья:
https://habr.com/ru/post/501696/
спасибо огромное
источник

А

Александр in pgsql – PostgreSQL
Victor Yegorov
права выдаются так:
- есть пользователи (с точки зрения базы, тоже роли, с возможностью подключения)
- есть объекты в базе
- создаются AccessControlList роли (а-ля mydb_ro, mydb_rw, mydb_dwh, mydb_security), им даются права на конкретные объекты
- создаются роли-групы (а-ля, Support, Operator, Security, Engineer) и им выдаются ACL-права
- роли-группы выдаются конкретным пользователям и определяют их возможности
(я обычно роли-группы пропускаю, слишком сложно.)
Тоже стараюсь придерживаться это схемы.
Я правильно понимаю что по умолчанию public может видеть все роли, список БД и их схемы?
источник

EZ

Evgenii Zhuravlev in pgsql – PostgreSQL
Sergey Bezrukov
pg_stat_activity показывает ИП адреса, с которых установлено соединение
по мониторингу сейчас самое модное - графана, к ней есть postgres_exporter, вот неплохая статья:
https://habr.com/ru/post/501696/
pg_stat_activity посмотрел - приложение, которое ходит в базу, работает на этом же сервере, т.е. адрес 127.0.0.1 для всех запросов. Можно ли как-то отделить те что пришли от Боунсера, и те что пришли напрямую?
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Evgenii Zhuravlev
pg_stat_activity посмотрел - приложение, которое ходит в базу, работает на этом же сервере, т.е. адрес 127.0.0.1 для всех запросов. Можно ли как-то отделить те что пришли от Боунсера, и те что пришли напрямую?
у баунсера с какой-то версии есть опция application_name_add_host, можно включить. также можно попробовать пустить баунсер не через 127.0.0.1, а через unix-socket, или через основной адрес
источник

E

Eldar in pgsql – PostgreSQL
Мужики подскажьте этих настроек хватает чтоб закрыться от внешних коннекшенов ?
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Александр
Тоже стараюсь придерживаться это схемы.
Я правильно понимаю что по умолчанию public может видеть все роли, список БД и их схемы?
может, доступ к системному каталогу есть у всех. более того, отобрать его может и не выйти. я уже не помню какие там грабли, но как минимум в psql работать будет не удобно, как максимум — запросы могут перестать планироваться
источник

SB

Sergey Bezrukov in pgsql – PostgreSQL
Victor Yegorov
у баунсера с какой-то версии есть опция application_name_add_host, можно включить. также можно попробовать пустить баунсер не через 127.0.0.1, а через unix-socket, или через основной адрес
Или через 127.0.0.2, например
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Eldar
Мужики подскажьте этих настроек хватает чтоб закрыться от внешних коннекшенов ?
пароли смогут подбирать при таких настройках, если база слушает мир
источник

E

Eldar in pgsql – PostgreSQL
Victor Yegorov
пароли смогут подбирать при таких настройках, если база слушает мир
слушать мир - это listen_adresses '(не )localhost' ?
источник

А

Александр in pgsql – PostgreSQL
Victor Yegorov
может, доступ к системному каталогу есть у всех. более того, отобрать его может и не выйти. я уже не помню какие там грабли, но как минимум в psql работать будет не удобно, как максимум — запросы могут перестать планироваться
То есть задачу «Конкретной роли доступ только к конкретной БД что бы ничего лишнего не было доступно» решить можно, но это может привести к непредвиденным последствиям? Печально 🙁
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Александр
То есть задачу «Конкретной роли доступ только к конкретной БД что бы ничего лишнего не было доступно» решить можно, но это может привести к непредвиденным последствиям? Печально 🙁
пробуйте, зачем сразу сдаётесь?..
источник

А

Александр in pgsql – PostgreSQL
Victor Yegorov
пробуйте, зачем сразу сдаётесь?..
Попробую, получится, рецепт скину
источник