FirebirdSQL logo

Роль (role) — объект базы данных, представляющий набор привилегий.Роли реализуют концепцию управления безопасностью на групповом уровне.Множество привилегий предоставляется роли, а затем роль может быть предоставлена или отозвана у одного или нескольких пользователей.

Пользователь, которому предоставлена роль, должен указать её при входе, для того чтобы получить её привилегии, или же эта роль должна быть грантована с использованием ключевого слова DEFAULT.Любые другие привилегии, предоставленные пользователю, не будут затронуты при его входе в систему с указанной ролью.Вход в систему с несколькими ролями не поддерживается, однако вы можете права нескольких ролей назначенных по умолчанию.Вы можете изменить текущую роль с помощью оператора SET ROLE.

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

В данном разделе рассматриваются вопросы создания и удаления ролей.

CREATE ROLE

Назначение

Создание новой роли.

Доступно в

DSQL, ESQL

Синтаксис
CREATE ROLE rolename
[SET SYSTEM PRIVILEGES TO <privileges_list>]

<privileges_list> ::= <privilege> [, <privilege> [, <privilege> ...]]
Table 1. Параметры оператора CREATE ROLE
Параметр Описание

rolename

Имя роли.Максимальная длина 63 символа.

privilege

Системная привилегия.

Оператор CREATE ROLE создаёт новую роль.Имя роли должно быть уникальным среди имён ролей.

Warning

Желательно также чтобы имя роли было уникальным не только среди имён ролей, но и среди имён пользователей.Если вы создадите роль с тем же именем существующего пользователя, то такой пользователь не сможет подключиться к базе данных.