Защита информации. ЛР4 «Защита информации в операционных системах», ЛР5 «Изучение модели разграничения доступа в СУБД MySQL»

Лабораторная работа
в среде программирования MySQL



Если Вы считаете, что данная страница каким-либо образом нарушает Ваши авторские права, то Вам следует обратиться в администрацию нашего сайта по адресу info@kursovik.com либо через форму обратной связи

Среда программирования: MySQL

Название работы: Защита информации. ЛР4 «Защита информации в операционных системах», ЛР5 «Изучение модели разграничения доступа в СУБД MySQL»

Вид работы: Лабораторная работа

Описание: Две лабораторные работы по предмету "Защита информации".

Лабораторная работа №4 «Защита информации в операционных системах».
Цель работы: изучить работу компонентов защиты информации в ОС Windows 7.
Задание:
• Изучить теоретические предпосылки.
• Выполнить задание.
Оформить и сдать программу и отчет по лабораторной работе.

Лабораторная работа №5 «Изучение модели разграничения доступа в СУБД MySQL».
Постановка задачи:
Выполнить указанную в задании последовательность команд.
Оформить и защитить отчет с полученными результатами.
Задание:
1. Создание пользователей и задание им привилегий на доступ к БД и таблицам.
1.1 Запустите сервер MySQL, запустив пакет Denwer (команда StartDenwer) и подключитесь к серверу из-под администратора root.
1.2 Используя phpMyAdmin, просмотрите содержимое системной БД mysql.
Обратите внимание на таблицу user, где хранятся учетные записи пользователей сервера БД.
1.3 Создайте двух пользователей СУБД MySQL: user1 и user2 различными способами: используя командный режим и через интерфейс phpMyAdmin.
В командном режиме выполните команду для добавления пользователя user1 и задания ему привилегий: insert into user (Host, User, Password, Select_priv) values ('localhost', 'user1', password('user1'),'Y');
1.4 Рассмотрим процесс задания привилегий для пользователя. Выполните команду для задания привилегий пользователю user1 на БД db1:
insert into db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Alter_priv, Index_priv) values ('localhost', 'db1', 'user1', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');
1.6 Выполните аналогичную команду для задания привилегий пользователю user2 на БД db2.
1.7 Выполните команду для задания привилегий пользователю user1 на таблицу colours БД db2:
insert into tables_priv (Host, Db, User, Table_name, Table_priv) values (‘localhost’, ’db2’, ‘user1’, ’table1’, ’Select,Update,Delete’);
2 Создание БД и назначение привилегий на таблицы данных
2.1 Подключитесь к серверу из-под user1, используя phpmyadmin.
create database db1;
В БД db1 создайте таблицы students и groups с помощью следующих SQL-запросов:
create table students
create table groups
Добавьте в таблицу groups записи для двух групп, например:
insert into groups (name) values (‘g1’);
Результат добавления данных в любую таблицу можно проконтролировать с помощью запроса
select * from имя_таблицы;
Добавьте в таблицу students записи для 5 студентов, так, чтобы двое учились в одной группе, а трое – в другой, например:
insert into students (surname, name, birthdate, address, tel, course, id_group) values (‘Ivanov’, ‘Petr’, ‘1992-04-17’, ’Odessa’, ‘099-321-54-87’, ‘2’, 1);
2.2 Пользователь user2
2.2.1 Создайте БД с именем db2 и подключитесь к ней.
В БД db2 создайте таблицу days с помощью следующего SQL-запроса:
create table days
Добавьте в таблицу days записи для трех дней недели – понедельника, вторника и среды, например:
insert into days (name) values (‘Sunday’);
В БД db2 создайте таблицу colours с помощью следующего SQL-запроса:
create table colours
Добавьте в таблицу colours записи для трех цветов – красного, синего и белого, например:
insert into colours (name) values (‘green’);
3 Тестирование систем привилегий пользователей
3.1 Пользователь 1
3.1.1 Подключитесь к системной БД mysql из-под пользователя user1.
Выполните запрос на добавление нового пользователя с именем new_user.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user1.
Пользователь user1 не имеет привелегий на изменение данных в системной базе данных mysql.
3.1.2 Подключитесь к БД db2.
Сделайте выборку всех записей из таблицы days.
При работе с системной БД mysql (таблицей db) вы явно не указали, что пользователь user1 может просматривать БД db2. Объясните, почему просмотр БД db2 возможен.
Потому что при создании пользователя мы добавили ему глобальную привелегию на SELECT. Поэтому пользователь может делать select запросы во всех базах данных, кроме тех, к которым доступ ему прямо запрещен.
3.1.3 Выполните запрос на добавление в таблицу days записи, например, для субботы.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user1 на БД db2.
3.1.4 Сделайте выборку всех записей из таблицы colours.
Добавьте в нее запись для желтого цвета.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user1 на БД db2 и ее таблицу colours.
3.1.5 Обновите какую-либо запись в таблице colours, например:
update colours set name=’pink’ where id=2;
Объясните результат выполнения запроса с точки зрения привилегий пользователя user1 на БД db2 и ее таблицу colours.
3.1.6 Удалите запись для какого-либо цвета, например:
delete from colours where name=’orange’;
Объясните результат выполнения запроса с точки зрения привилегий пользователя user1 на БД db2 и ее таблицу colours.
3.2 Пользователь 2
3.2.1 Подключитесь к БД db1.
Сделайте выборку всех записей из таблицы students.
Добавьте запись для еще одной группы в таблицу groups.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user2 на БД db1.
3.2.2 Удалите все записи из таблицы groups.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user2 на БД db1.
Создайте в БД db1 новую таблицу с именем test_table (поля: id типа int, не пустое; test_field типа text, не пустое; первичный ключ – поле id).
Объясните результат выполнения запроса с точки зрения привилегий пользователя user2 на БД db1.
3.2.3 Добавьте к таблице test_table новый столбец description с помощью запроса:
alter table test_table add column description text;
Объясните результат выполнения запроса с точки зрения привилегий пользователя user2 на БД db1.
3.2.4 Удалите таблицу test с помощью запроса: drop table test;
Объясните результат выполнения запроса с точки зрения привилегий пользователя user2 на БД db1.
3 Использование команд GRANT и REVOKE для задания привилегий пользователей
3.1 Войдите в систему из-под пользователя root. Создайте пользователей user3 и user4.
3.2 Выполните команду для задания привилегий пользователю user3 на БД db3 (если указанного пользователя не существует, он создастся):
grant create, select, insert, update, delete on db3.* to user3@localhost identified by ‘user3’;
3.3 Войдите в систему из-под пользователя user3.
Создайте БД с именем mydb.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.
Создайте БД с именем db3.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.
3.4 Подключитесь к БД db3.
Создайте в ней таблицу
goods (поля: id типа int, не пустое, auto_increment; name типа varchar (200), не пустое; type типа varchar (30) не пустое; price типа numeric(9,2), не пустое; первичный ключ – поле id).
3.5 Добавьте в таблицу goods несколько записей.
Результат добавления данных таблицу можно проконтролировать с помощью запроса select * fromgoods;
Обновите какую-либо запись в таблице goods.
Удалите записи, у которых id>2.
Объясните результат выполнения запросов на добавление, удаление и изменение записей с точки зрения привилегий пользователя user3.
3.6 Добавьте поле в таблицу goods с помощью запроса:
alter table goods add date_prod date not null;
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.
3.7 Удалите таблицу goods.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.
3.8 Войдите в систему из-под пользователя root. Выполните команду
revoke select on db3.* from user3@localhost identified by ‘user3’;
3.9 Войдите в систему из-под пользователя user3 и подключитесь к БД db3. Выполните команду
select * from goods;
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.
3.10 В БД db3 создайте еще одну таблицу с именем customers (поля: id типа int, не пустое, auto_increment; name типа varchar (255), не пустое; info типа text; первичный ключ – поле id).
3.11 Войдите в систему из-под пользователя root. Выполните команду для задания привилегий новому пользователю user4:
grant selecton db3.customers to user4@localhost identified by ‘user4’;
3.12 Войдите в систему из-под пользователя user4
и подключитесь к БД db3.
Создайте таблицу с именем users (поля: id типа int, не пустое, auto_increment; name типа varchar (255), не пустое; первичный ключ – поле id).
Объясните результат выполнения запроса с точки зрения привилегий пользователя user4.
3.13 Сделайте выборку записей из таблицы customers.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user4.
Добавьте запись в таблицу customers.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user4.
3.14 Войдите в систему из-под пользователя root. Выполните команду:
grant drop on db3.customers to user3@localhost identified by ‘user3’;
3.15. Войдите в систему из-под пользователя user3 и подключитесь к БД db3.
Выполните команду на удаление таблицы goods.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.
Выполните команду на удаление таблицы customers.
Объясните результат выполнения запроса с точки зрения привилегий пользователя user3.

Год: 2022

Данный заказ (лабораторная работа) выполнялся нашим сайтом в 2022-м году, в рамках этого заказа была разработана программа в среде программирования MySQL. Если у Вас похожее задание на программу, которую нужно написать на MySQL, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2022-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".

Купить эту работу

Viber: +79374242235
Telegram: kursovikcom
ВКонтакте: kursovikcom
WhatsApp +79374242235
E-mail: info@kursovik.com
Skype: kursovik.com