Я не администратор базы данных, и у меня есть некоторые вопросы по элементам управления доступом для схем. Предположим, у меня есть сервер Postgres, на котором запущено несколько баз данных. Пользователь admin - postgres. У меня есть еще один пользовательский tmpUser, с которым я могу войти на удаленный сервер, используя pgadmin3 client.Postgres ACL для схем
Теперь я создаю базу данных myDatabase, которая по умолчанию принадлежит пользователю postgres. Затем я использую свой администратор для удаленного входа в эту myDatabase с помощью учетной записи tmpUser.
Теперь я создаю новую схему внутри этой myDatabase, называемую myDbSchema. Я создал новую роль под названием myDbRole и использовал использование гранта, предоставил все на myDatabase, myDbSchema myDbRole.
Вопрос теперь в том, как я должен контролировать доступ к этой myDatabase. Я попытался войти на удаленный сервер, используя tmpUser, и когда я попытался выполнить select * from myTable
, где myTable - это таблица в myDatabase, она вернулась с разрешением, отклоненным sql-сообщением. Поэтому я изменил владельца таблицы на tmpUser, которого я действительно не хочу!
Есть ли руководство или что-то о том, как мне следует создавать и организовывать роли с помощью схем в postgres?
Вы еще не прочитали руководство по контролю доступа? 'GRANT',' ALTER DEFAULT PRIVILEGES' и т. Д.? –