LR8.Tyutterin_Yakov_Z1411-1
.pdfСписок прав нового пользователя из графического клиента:
Подробный просмотр прав пользователя:
Также можно ввести пользователя, который будет заниматься билетами на спектакли и продажей абонементов соответственно.
Создадим пользователя cashier_manager:
Опишем его привилегии в табличном виде:
Таблица |
Список прав |
tickets |
DELETE, UPDATE, INSERT, SELECT |
subscriptions |
DELETE, UPDATE, INSERT, SELECT |
subscription_ticket |
DELETE, UPDATE, INSERT, SELECT |
|
Функция |
|
INIT_TICKETS |
Добавление прав к таблице tickets: |
|
GRANT Select ON theatre.tickets GRANT Insert ON theatre.tickets GRANT Update ON theatre.tickets GRANT Delete ON theatre.tickets
TO 'cashier_manager'@'%';
TO 'cashier_manager'@'%';
TO 'cashier_manager'@'%';
TO 'cashier_manager'@'%';
Добавление прав к таблице subscriptions:
GRANT Delete ON theatre.subscriptions TO GRANT Insert ON theatre.subscriptions TO GRANT Select ON theatre.subscriptions TO GRANT Update ON theatre.subscriptions TO
'cashier_manager'@'%'; 'cashier_manager'@'%'; 'cashier_manager'@'%'; ‘cashier_manager'@'%';
Добавление прав к таблице subscription_ticket:
GRANT Delete ON theatre.subscription_ticket TO 'cashier_manager'@'%'; GRANT Insert ON theatre.subscription_ticket TO 'cashier_manager'@'%'; GRANT Select ON theatre.subscription_ticket TO 'cashier_manager'@'%'; GRANT Update ON theatre.subscription_ticket TO ‘cashier_manager'@'%';
Выдача прав на вызов функции INIT_TICKETS:
use theatre;
GRANT EXECUTE ON FUNCTION INIT_TICKETS TO ‘cashier_manager'@'%';
Просмотр прав в графическом клиенте:
Просмотр прав через терминал:
Просмотр списка пользователей БД:
Вывод
В результате проделанной работы был получен практический опыт создания пользователей, привилегий и их назначения первым. Привилегии в базе данных MySQL позволяют назначать пользователям различные права доступа к базам данных. Вот некоторые привилегии:
—CREATE — позволяет создавать новые базы данных и таблицы;
—DROP — позволяет удалять базы данных или таблицы;
—INSERT — позволяет добавлять строки к таблице;
—UPDATE — позволяет изменять содержание строк таблиц;
—DELETE — позволяет удалять строки из таблицы;
—ALTER — позволяет изменять структуру таблиц;
—SELECT — позволяет читать (выводить строки) таблицы, используя выборки по столбцам и/или по некоторым арифметическим и логическим критериям;
—GRANT OPTION — позволяет назначить конкретные права определенному пользователю.
—и т.д.
Таким образом мы можем ограничивать доступ пользователей, тем самым гарантируя сохранность и целостность данных в БД, так как лишь определенной группе пользователей(администраторам), будет доступен полный контроль за БД, а отдельным группам пользователь лишь часть из всего доступного функционала БД.
Сложность возникала лишь из-за небольшой разницы синтаксиса между
PostgreSQL.
Список использованных источников:
1)https://oracleplsql.ru/grant-revoke-privileges-mysql.html
2)https://stackoverflow.com/questions/5428406/grant-execute-permission-for-a-user-on-all- stored-procedures-in-database
3)https://dev.mysql.com/doc/refman/8.0/en/grant.html
4)https://stackoverflow.com/questions/51390397/privileges-required-to-create-and-call-stored- procedures
5)https://intuit.ru/studies/courses/4/4/lecture/108