Система безопасности сервера баз данных

  • Вид работы:
    Практическое задание
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    488,52 Кб
  • Опубликовано:
    2012-07-22
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Система безопасности сервера баз данных

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное

образовательное учреждение

высшего профессионального образования

«Владимирский государственный университет

имени Александра Григорьевича и Николая Григорьевича Столетовых»

(ВлГУ)

Кафедра «Вычислительная техника»




Лабораторная работа № 3

по дисциплине

«Управление базами данных»

«Система безопасности сервера баз данных»

Выполнил:

ст. гр. ВТ-109

Герасимов А. В.

Принял:

Гладьо С.С.




Владимир 2012

Вариант №8

Цель работы: получить навыки в обеспечении безопасности сервера баз данных.

Петров1: Может создавать новые учетные записи. Не имеет доступ к базе данных.

Петров2: Не может выполнять действий по конфигурированию сервера. Может читать данные из Таблица1 и Таблица2, но не может читать данные из Таблица3 и Таблица4. Может создавать новые таблицы.

Петров3: Может только выполнять не системные хранимые процедуры.

Петров4: Может только добавлять данные в Таблица3.

Петров1 и Петров2 работают в одном отделе, работникам которого предоставлено разрешение на чтение, изменение и добавление данных в Таблица1 и Таблица2.

Петров3 и Петров4 не имеют доступа к Таблица1 и Таблица2.

Разработать хранимую процедуру, которая добавляет данные в Таблица1, Таблица2, Таблица3, Таблица4. Сделать так, чтобы добавление с помощью этой хранимой процедуры мог выполнить любой пользователь базы данных (воспользоваться ролью приложения).

Ход работы.

ФИО=<[id], [ФИО]>

Должность=<[id], [Должность]>

Часы=<[id], [Часы]>

Проекты =<[id], [Проект]>

Создание БД и таблиц

DATABASE lab3DB;lab3DB;TABLE FIO ( id int,varchar(20) )TABLE POST ( id int,varchar(20) )TABLE PROJECT ( id int,varchar(20) )TABLE HR ( id int,int )

Создание пользователей БД

LOGIN petrov1 WITH PASSWORD = '100';LOGIN petrov2 WITH PASSWORD = '200';LOGIN petrov3 WITH PASSWORD = '300';LOGIN petrov4 WITH PASSWORD = '400';LOGIN petrov5 WITH PASSWORD = '500';USER Petrov1 FOR LOGIN petrov1;USER Petrov2 FOR LOGIN petrov2;USER Petrov3 FOR LOGIN petrov3;USER Petrov4 FOR LOGIN petrov4;USER Petrov5 FOR LOGIN petrov5;

Ограничение доступа для пользователей

база данное пользователь безопасность сервер

Петров1 может создавать новые учетные записи. Не имеет доступ к базе данных:

EXEC sp_addsrvrolemember 'petrov1', 'securityadmin';

GRANT SELECT ON FIO TO petrov2SELECT ON POST TO petrov2SELECT ON PROJECT TO petrov2SELECT ON HR TO petrov2CREATE TABLE TO petrov2

Петров3 может выполнять только не системные хранимые процедуры:PROCEDURE counter@num int@num = count(id) from FIO;@numEXEC ON counter TO petrov3

Петров4 может только добавлять данные в Таблица3:

GRANT INSERT ON PROJECT TO petrov4

Петров1 и Петров2 работают в одном отделе, работникам которого предоставлено разрешение на чтение, изменение и добавление данных в Таблица1 и Таблица2:

CREATE ROLE otd1SELECT, UPDATE, INSERT ON FIO TO otd1SELECT, UPDATE, INSERT ON POST TO otd1sp_addrolemember 'otd1', 'petrov1'sp_addrolemember 'otd1', 'petrov2'

Петров3 и Петров4 не имеют доступа к Таблица1 и Таблица2:

CREATE ROLE otd2SELECT, UPDATE, INSERT ON FIO TO otd2SELECT, UPDATE, INSERT ON POST TO otd2sp_addrolemember 'otd2', 'petrov3'sp_addrolemember 'otd2', 'petrov4'

Хранимая процедура, доступная всем пользователям

PROCEDURE insertion@num int@num = count(id) from FIO;@num=@num+1;INTO FIO VALUES (@num+1, 'Петров')INTO POST VALUES (@num+1, 'Руководитель')INTO PROJECT VALUES (@num+1, 'Контроль')INTO HR VALUES (@num+1, '8')APPLICATION ROLE APPLROLE WITH PASSWORD = 'pass';EXEC ON insertion to APPLROLE

Скрипты для проверки ограничений:

lab3DBLOGIN petrov6 WITH PASSWORD = '600';* FROM FIO* FROM POST* FROM PROJECT* FROM HRINTO FIO VALUES (100, 'Иванов')INTO PROJECT VALUES (100, 'Руководство')INTO POST VALUES (100, 'Консультант')INTO HR VALUES (100, 8)TABLE TASK ( id int,varchar(20) )counter

sp_setapprole 'APPLROLE', 'pass'insertion

Петров1:











Петров3:




Петров4:





Петров5:


Выводы

в ходе выполнения лабораторной работы были изучены методы обеспечения безопасности сервера базы данных. Также были созданы пользователи с ограниченным доступом и написаны скрипты для проверки безопасности БД.

Похожие работы на - Система безопасности сервера баз данных

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!