Я должен что-то упустить в отношении настройки PostgreSQL. Я хотел бы создать несколько баз данных и пользователей, которые изолированы друг от друга, чтобы у определенного пользователя был доступ только к тем базам данных, которые я указал. Однако из того, что я могу определить, любой созданный пользователь имеет доступ ко всем базам данных без предоставления каких-либо конкретных грантов.
Вот что я делаю на Ubuntu Server 12.04:
- apt-get установить postgresql
- sudo -u postgres createuser -DRSP mike1 (указание пароля для нового пользователя)
- sudo -u postgres созданный data1
- psql -h localhost -U mike1 data1 (указание пароля для входа в систему пользователя mike1)
Кажется, что у нового пользователя "mike1" нет проблем с подключением к базе данных "data1", созданием таблиц и т. Д. И это вообще без какой-либо команды GRANT (а владельцем "data1" является "postgres", так как я не указал владелец на шаге 3). Это действительно, как это должно работать?
Я хотел бы предоставить mike1 полный доступ к data1, а затем повторить это для большего количества пользователей и баз данных, убедившись, что пользователи имеют доступ только к одной (или, возможно, нескольким) базам данных по моему выбору.