VY
Использую короткоживущие пользовательские сессии (облако), т.е. пользователи создаются с рандомными доступами на короткий срок, приводятся в нужный вид серией команд и отдаются приложению.
Пользователь создается так:
CREATE USER "{{name}}" WITH PASSWORD '{{password}}' VALID UNTIL '{{expiration}}';
GRANT project_rw TO "{{name}}";
ALTER ROLE "{{name}}" SET role project_rw;
ALTER ROLE "{{name}}" SET search_path TO django, public;Сделал
SET role project_rw чтобы объекты создаваемые пользователем (к примеру из автоматических миграций базы) принадлежали роли, а не текущему юзеру, иначе их потом никто не сможет поправить в другой миграции другим пользователем. Но этого не происходит 🙁 созданные таблицы привязались к юзернейму. Что я делаю не так?если вы хотите, чтобы у таблиц (и прочих объектов) был один владелец, надо:
- создавать таблицы этим пользователем
- явно менять владельца после создания другими пользователями
Может быть возможно прикрыть это event триггером, не смотрел. Или таской в кроне…
