Как продвинуть сайт на первые места?
Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.

Ускорение продвижения
Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.



Иллюстрированный самоучитель по PostgreSQL

Управление группами

Группы упрощают процедуру назначения прав пользователям. Обычные привилегии должны назначаться каждому пользователю по отдельности. Это может быть весьма утомительно, если нескольким пользователям требуется одинаковый уровень доступа к нескольким объектам базы данных.

Для решения этой проблемы в PostgreSQL создаются группы. При создании группы достаточно указать ее имя, причем группа может быть пустой (то есть не содержащей ни одного пользователя). Пользователи, обладающие общими привилегиями доступа, включаются в группу и в дальнейшем считаются ее членами. Права доступа к объектам базы данных предоставляются группе в целом, а не ее отдельным членам. В системах с большим количеством пользователей и баз данных группы значительно упрощают задачу управления правами.

Примечание
Пользователь может входить в любое количество групп, но может и не принадлежать ни к одной группе
.

Создание и удаление групп

Прежде чем переходить к управлению группами, сначала необходимо разобраться в том, как происходит создание и удаление групп. Обе операции требуют привилегий суперпользователя (за дополнительной информацией о суперпользователях обращайтесь к разделу "Управление пользователями" этой главы).

Создание группы

Любой суперпользователь может создать новую группу PostgreSQL командой SQL CREATE GROUP. Синтаксис команды CREATE GROUP:

CREATE GROUP группа [ WITH
[ SYSID идентификатор_группы ]
[ USER пользователь [….]]]

Параметр группа определяет имя создаваемой группы. Имена групп должны начинаться с алфавитного символа, а их длина не может превышать 31 символа. В секции WITH передаются дополнительные атрибуты. Ключевое слово SYSID задает системный идентификатор новой группы. Ключевое слово USER позволяет включить одного или нескольких пользователей в группу на стадии ее создания. Имена членов группы разделяются запятыми.

Следует помнить, что таблицы пользователей и групп в PostgreSQL существуют отдельно друг от друга. Несмотря на это, в PostgreSQL не допускается совпадение системных идентификаторов пользователей и групп.

В листинге 10.11 создается группа sales, в которую при создании включаются два пользователя, allen и vincent.

Листинг 10.11. Создание группы.

booktown=# CREATE GROUP sales
booktown-# WITH USER alien, Vincent;
CREATE GROUP

Сообщение CREATE GROUP означает, что группа успешно создана. Чтобы убедиться в этом, а также получить список всех существующих групп, достаточно выполнить запрос к системной таблице pg_group. Пример такого запроса приведен в листинге 10.12.

Листинг 10.12. Получение списка групп.

booktown=# SELECT * FROM pg_group;
groname grosysid | grolist
sales | 1 | {7017.7016}
accounting | 2 |
marketing | 3
(3 rows)

Обратите внимание на столбец grolist – в нем перечислены идентификаторы пользователей PostgreSQL, входящих в группу. Это те самые идентификаторы, которые выводятся в представлении pg_user. Пример:

booktown=# SELECT usename FROM pg_user
booktown-# WHERE usesysid = 7017 OR usesysid = 7016;
usename
alien
vincent
(2 rows)
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.