PostgresSQL вижу чужые базы данных — это нормально?

Ребят установил PostgresSQL и phpPgAdmin, сделал несколько пользователей и создал к ним базы данных, но каждый пользователь видет чужую базу, это нормально?
3516ea4f6d854c22a6375094013b21d4.png
Каждая бд пренадлежит своему пользователю
Мне кажется, что нет, погулил ненашёл ничего по этому поводу. Может кто поздсказать?
  • Вопрос задан
  • 2797 просмотров
Пригласить эксперта
Ответы на вопрос 5
gr1mm3r
@gr1mm3r
50% ответа в правильном вопросе. Остальное мануал.
Если вам надо разделить видимости баз по пользователям то это не правильно.
вы создали базы видимые для всех ( по грантам не могу сказать т.к. не вижу.
Если вам надо создавать базы и запирать в них пользователей то используйте 2 команды
CREATE ROLE имя_пользователя WITH LOGIN PASSWORD 'пароль';
CREATE DATABASE имя_базы WITH OWNER Имя_пользователя;


Чтобы сейчас исправить ситуацию используйте Revoke
REVOKE ALL PRIVILEGES ON имя_базы FROM имя_пользователя;

Подробнее по Revoke

Дать доступ конкретному пользователю к базе используем Grant
GRANT ALL PRIVILEGES ON имя_базы FROM имя_пользователя;

Подробнее про GRANT
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
%D1%82%D0%B0%D0%B9%D0%BD%D0%B0%D1%8F-%D0

Если можете оттуда данные забирать или и того хуже записывать т.д. - надо смотреть настройки прав доступа.
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Ubuntu
software engineer
> Ребят установил PostgresSQL и phpPgAdmin, сделал несколько пользователей и создал к ним базы данных, но каждый пользователь видет чужую базу, это нормально?

Вы же админ базы. База работает так, как ВЫ ее настроили. Вы уточните что вы хотите - если хотите чтобы все видели чужие базы - значит вы все сделали правильно и это нормально. Если вы хотите, чтобы каждый видел только свою базу - значит это ненормально, и вы не настроили права доступа.
Ответ написан
Комментировать
butteff
@butteff
Раз в тысячу лет заправляю свитер в носки
Это не нормально, я думаю.
Значит есть права на чтение у других юзеров или у группы этих юзеров.
Ответ написан
select * from pg_catalog.pg_roles;
поле "rolsuper" у всех пользователей "t"?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы