Два владельца той же базы данных PostgreSQL

Действительно ли возможно с Postgresql создать базу данных, которая имеет 2 пользователей, которые действуют как владельцы к базе данных?

Я могу создать роль группы и добавить обоих пользователей к той группе и затем сделать группу владельцем базы данных, но это требует, чтобы оба пользователя, чтобы быть вручную установили свою роль на каждом соединении для создания любых таблиц, которые они составили доступный для другого пользователя. Там какой-либо путь состоит в том, чтобы заставить группу быть ролью по умолчанию для пользователя каждый раз, когда они входят в систему или какой-либо другой способ достигнуть того же самого?

11
задан ekad 2 December 2017 в 02:36
поделиться

2 ответа

Нет, у каждой базы данных может быть только один владелец. Как указывалось ранее, у вас может быть более одного суперпользователя или вы можете предоставлять разрешения специально для групповых ролей, которые затем наследуются.

Вы можете посмотреть http://blog.hagander.net/archives/70-Faking-the-dbo-role.html , чтобы найти способ подделать что-то похожее на то, что вы ' просят. Это не идеально, но может быть достаточно для вас. По крайней мере, он должен решить проблему владения объектом.

12
ответ дан 3 December 2019 в 06:46
поделиться

А, нашел: PostgreSQL Docs: Глава 20. Database Roles and Privileges

" роли членов, которые имеют атрибут INHERIT, автоматически используют привилегии ролей, членами которых они являются"

CREATE ROLE joe LOGIN INHERIT;
CREATE ROLE admin NOINHERIT;
GRANT admin TO joe;

" Сразу после подключения в качестве joe, сессия базы данных будет использовать привилегии, предоставленные непосредственно joe, плюс любые привилегии, предоставленные администратору, потому что joe "наследует" привилегии администратора"

6
ответ дан 3 December 2019 в 06:46
поделиться
Другие вопросы по тегам:

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