В PostgreSQL команда CREATE ROLE
используется для создания новой роли. Роли применяются для управления доступом к базе данных и могут быть пользователями или группами.
Синтаксис CREATE ROLE
CREATE ROLE имя_роли [WITH опции];
имя_роли
— название новой роли.WITH
— задаёт параметры роли (необязательно).опции
— список прав и параметров роли.
Создание роли
Создание роли без параметров:
CREATE ROLE user_readonly;
Назначение привилегий и управление ролями
Роль можно назначить другому пользователю:
GRANT reader TO user1;
Удаление роли
Для удаления роли используется команда:
DROP ROLE reader;
Создание роли с возможностью входа в систему
Чтобы создать роль с возможностью входа, используется LOGIN
:
CREATE ROLE user_admin WITH LOGIN PASSWORD 'securepassword';
Создание роли суперпользователя
Роль с полными привилегиями создаётся с помощью SUPERUSER
:
CREATE ROLE super_user WITH SUPERUSER LOGIN PASSWORD 'strongpassword';
Создание роли с ограниченными правами
Создание роли с правами только на чтение данных:
CREATE ROLE reader WITH LOGIN PASSWORD 'readonlypass' NOSUPERUSER;