Добавил:
t.me Установите расширение 'SyncShare' для решения тестов в LMS (Moodle): https://syncshare.naloaty.me/ . На всякий лучше отключить блокировщик рекламы с ним. || Как пользоваться ChatGPT в России: https://habr.com/ru/articles/704600/ || Также можно с VPNом заходить в bing.com через Edge браузер и общаться с Microsoft Bing Chat, но в последнее время они форсят Copilot и он мне меньше нравится. || Студент-заочник ГУАП, группа Z9411. Ещё учусь на 5-ом курсе 'Прикладной информатики' (09.03.03). || Если мой материал вам помог - можете написать мне 'Спасибо', мне будет очень приятно :) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3 курс 2 семестр / Z9411_КафкаРС_БД_ЛР5

.docx
Скачиваний:
6
Добавлен:
24.10.2023
Размер:
164.87 Кб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА 41

ОЦЕНКА

ПРЕПОДАВАТЕЛЬ

ассистент

В. В. Боженко

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №5

ПОЛЬЗОВАТЕЛЬСКИЕ ПРИВИЛЕГИИ

по дисциплине: Базы данных

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

Z9411

Р. С. Кафка

номер группы

подпись, дата

инициалы, фамилия

Студенческий билет №

2019/3603

Санкт-Петербург 2022

Цель работы: научиться использовать функции GRANT и REVOKE для назначения и лишения привилегий.

Порядок выполнения работы:

  1. Создать на MySQL-сервере пользователя и назначить ему администраторские привилегии.

  2. Создать соединение этого пользователя с сервером в Workbench.

  3. Через диалоговое окно Workbench создать пользователя без привилегий.

  4. Посмотреть список прав созданных ранее пользователей.

  5. Удалить привилегии созданного в п.1. пользователя через MySQL-сервер.

  6. Передать этому же пользователю привилегии для работы с таблицами через Workbench.

Ход работы:

  1. Создал на MySQL-сервере пользователя.

Для этого открыл MySQL 8.0 Command Line Client и ввёл код, представленный на рисунке 1.

Рисунок 1 – Создание пользователя KAFKA

  1. Создал соединение этого пользователя с сервером в Workbench, назначил ему администраторские привилегии.

Для этого ввёл код, представленный на рисунке 2.

Рисунок 2 – Присвоение пользователю KAFKA всех привилегий

  1. Через диалоговое окно Workbench создал пользователей без привилегий.

Для этого ввёл код, представленный на рисунке 3.

Рисунок 3 – Создание пользователей USER1 и USER2 без привилегий

  1. Посмотрел список прав созданных ранее пользователей.

Для этого ввёл команду:

SELECT * FROM user;

В результате вывелась таблица с пользователями (рис.4). Проанализировав её, можно заметить, что пользователь KAFKA во всех столбцах таблицы имеет «Y» - что значит подтверждение прав. Тогда как у двух других пользователей «USER1» и «USER2» везде стоит «N» - отрицание. У них нет никаких привилегий.

Рисунок 4 – Просмотр списка прав пользователей

  1. Удалил привилегии созданного в п.1. пользователя через MySQL-сервер.

Для этого ввёл код:

REVOKE ALL PRIVILEGES ON *.* FROM 'KAFKA';

Результаты представлены на рисунках 5-6.

Рисунок 5 – Лишение KAFKA всех привилегий

Рисунок 6 – Привилегии пользователя KAFKA после их лешения

  1. Передал этому же пользователю привилегии для работы с таблицами через Workbench.

Выдал пользователю возможность создавать, удалять и изменять таблицы с помощью следующего кода:

GRANT ALTER, CREATE, DROP ON *.* TO KAFKA WITH GRANT OPTION;

Результат представлен на рисунках 7-8.

Рисунок 7 – Присвоение пользователю KAFKA привилегий для работы с таблицами (создание, удаление, изменение)

Рисунок 8 – Привилегии пользователя KAFKA для работы с таблицами

Вывод

Я научился использовать функции GRANT и REVOKE для назначения и лишения привилегий.

С помощью функции GRANT можно создавать пользователей.

Также пользователям можно выдавать привилегии. Следует заметить, что с помощью типа привилегий ALL будут выданы не все простые привилегии – все, кроме WITH GRANT OPTION.

WITH GRANT OPTION позволяет передать привилегии другим пользователям. Включение в оператор необязательного раздела WITH GRANT OPTION означает, что получателям передаваемых привилегий дается также привилегия на дальнейшую передачу полученных привилегий, включая привилегию на передачу привилегий.

Привилегии можно указать как для всей БД, так и для конкретной таблице или столбцов.

Пользователь root в основном эквивалентен пользователю-администратору в Windows - пользователь root имеет максимальные разрешения и может делать с системой все, что угодно. Если говорить просто про администратора, то у него может быть меньше прав, поскольку в его задачу входит только администрирование.

Список использованных источников

  1. Нестеров, С. А. Базы данных: учебник и практикум для вузов / С. А. Нестеров. — Москва: Издательство Юрайт, 2022. — 230 с. — (Высшее образование). — ISBN 978-5-534-00874-6. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/489693 (дата обращения: 23.05.2022).

  2. Осипов Д. Л. Технологии проектирования баз данных. – М.: ДМК Пресс, 2019. – 498 с.: ил.

  3. Интерактивный учебник по SQL. URL: http://www.sql-tutorial.ru/ (дата обращения 23.05.2022).

  4. Упражнения по SQL. URL: https://www.sql-ex.ru/?Lang=0 (дата обращения 23.05.2022).

  5. Автор YouTube канала «htmllab». Курс MySQL 8 – YouTube. URL: https://youtube.com/playlist?list=PLOQDek48BpZFeW02dfJM77FY4Fp5ilJ6n (дата обращения 23.05.2022).

Соседние файлы в папке 3 курс 2 семестр