Введение
Информационные системы представлены в различных сферах бизнеса и нашей жизни: здравоохранение, производство, выращивание продуктов питания, развлечения и т.д. Все это требует более эффективного сохранения, обмена, извлечения, получения и обновления данных. Для этого общество разработало хранилища для структурированных данных и создало различные типы БД. В этой инструкции мы рассмотрим один из таких примеров — PostgreSQL и то, как управлять пользователями в ней.
Управление пользователями
Мы работаем с установленной системой управления базами данных (СУБД) PostgreSQL на нашу машину, теперь первым шагом будет переключение пользователя на postgres:
sudo -i -u postgres
psql

Для проверки пользователя в СУБД можно воспользоваться следующей командой:
SELECT * FROM pg_catalog.pg_user;

Теперь мы можем добавить новую учетную запись, для чего необходимо указать имя и пароль:
CREATE USER serverspace WITH PASSWORD 'mypassword.com';
А чтобы убедиться в корректности работы нашей команды, мы можем заметить надпись CREATE ROLE, как результат. Можем ввести также другую команду для проверки списка пользователей:
SELECT * FROM pg_catalog.pg_user;

В таблице представлены все параметры нового добавленного пользователя, теперь нам необходимо командой GRANT также предоставить ему привилегии:
GRANT ALL ON ALL TABLES IN SCHEMA public TO serverspace;
Поясним синтаксис этого сложного запроса:
- GRANT ALL — синтаксическая команда, позволяющая предоставить пользователю все или административные привилегии;
- ON ALL TABLES — означает предоставление привилегий для всех таблиц;
- IN SCHEMA — для PostgreSQL используется план организации таблиц в БД;
- TO serverspace — указывает на учетную запись для эскалации привилегий.

Точно так же мы можем его отменить:
REVOKE ALL ON ALL TABLES IN SCHEMA public FROM serverspace;

Как можно заметить, синтаксис команд напоминает человекоподобный и интуитивно понятный язык. Также мы можем назначить пользователю роль, то есть специальную группу для удобного управления:
CREATE ROLE tigers;
GRANT tigers to serverspace;

В тех случаях, когда необходимо восстановить пароль или обновить его по причине человеческого фактора или технических проблем, можно воспользоваться командой:
ALTER USER serverspace WITH PASSWORD 'newpassphrase';

Для удаления учетной записи можно использовать SQL—запрос DROP:
DROP USER serverspace;
И проверить список текущих пользователей в СУБД:
SELECT * FROM pg_catalog.pg_user;

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