Команда CREATE USER
в PostgreSQL используется для создания нового пользователя базы данных. Этот пользователь может получать доступ к базе и выполнять определённые операции в зависимости от назначенных привилегий.
Синтаксис
CREATE USER имя_пользователя [WITH опции];
При создании пользователя можно указать различные параметры, такие как пароль, возможность входа в систему и принадлежность к ролям.
Основные параметры
PASSWORD 'пароль'
– устанавливает пароль для пользователя.SUPERUSER
– предоставляет права суперпользователя.CREATEDB
– разрешает создание баз данных.CREATEROLE
– позволяет создавать новые роли.LOGIN
– разрешает вход в систему (по умолчанию включено).
Примеры использования
Создание пользователя с паролем
CREATE USER test_user WITH PASSWORD 'securepassword';
Создание пользователя с правами на создание баз данных
CREATE USER db_creator WITH PASSWORD 'password123' CREATEDB;
Создание суперпользователя
CREATE USER admin_user WITH PASSWORD 'adminpass' SUPERUSER;
Создание пользователя без возможности входа в систему
CREATE USER restricted_user NOLOGIN;
Выдача привилегий пользователю
После создания пользователя ему можно предоставить доступ к конкретным базам данных и таблицам:
GRANT CONNECT ON DATABASE mydb TO test_user;
GRANT SELECT, INSERT ON mytable TO test_user;