Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Записка по курсовому проекту ББД.doc
Скачиваний:
58
Добавлен:
29.02.2016
Размер:
861.7 Кб
Скачать

3.5 Распределение прав доступа пользователей

В текущей базе данных создано 5 пользователей и им были назначены права:

  1. Для директора был создан пользователь director и назначены следующие права:

create login direktor /*создаем логин direktor*/

with password = '1111111' /*с паролем 1111111*/

create user direktor

for login direktor/*создаем пользователя direktor для логина director */

GRANT EXECUTE TO direktor; /*даем права на выполнение хранимых*/

GRANT VIEW DEFINITION TO direktor; /*даем права на выполнение представлений*/

/*даем все привелегии для работы с таблицами*/

GRANT all PRIVILEGES oN object::[Данные со счетчиков] TO direktor;

GRANT all PRIVILEGES oN object::Договор TO direktor;

GRANT all PRIVILEGES oN object::Должники TO direktor;

GRANT all PRIVILEGES oN object::[Дома на обслуживании] TO direktor;

GRANT all PRIVILEGES oN object::Зарплата TO direktor;

GRANT all PRIVILEGES oN object::Заявки TO direktor;

GRANT all PRIVILEGES oN object::Квартиросъемщики TO direktor;

GRANT all PRIVILEGES oN object::Квартиры TO direktor;

GRANT all PRIVILEGES oN object::Отделы TO direktor;

GRANT all PRIVILEGES oN object::Сотрудники TO direktor;

GRANT all PRIVILEGES oN object::Услуги TO direktor;

  1. Для работника бухгалтерии была создана роль Buh_otdel и создан пользователь buhgalter, назначены следующие права:

create login buhgalter /*создаем логин buhgalter*/

with password = '1111111' /*с паролем 1111111*/

create user buhgalter

for login buhgalter /*создаем пользователя buhgalter для логина buhgalter */

create role Buh_otdel /*создаем роль Buh_otdel */

EXEC sp_addrolemember 'Buh_otdel', 'buhgalter' /*добавляем пользователя buhgalter к роли Buh_otdel */

GRANT all PRIVILEGES oN object::Зарплата TO Buh_otdel;

GRANT all PRIVILEGES oN object::Услуги TO Buh_otdel;

GRANT all PRIVILEGES oN object::Должники TO Buh_otdel;

/*даем все привелегии для работы с таблицами*/

GRANT all oN object::Сотрудники TO Buh_otdel;

GRANT EXECUTE on object::[Вся выданая зарплата +(sum)] TO Buh_otdel;

GRANT EXECUTE on object::[Вывести общую сумму задолжености по фамилии(sum)+] TO Buh_otdel;

GRANT EXECUTE on object::[Месяц выдачи зарплаты по фамилии(MONTH)] TO Buh_otdel;

GRANT EXECUTE on object::[Разбивает на группы по величине зарплаты (NTILE)] TO Buh_otdel;

GRANT EXECUTE on object::[Самая дешовая услуга(min)] TO Buh_otdel;

GRANT SELECT on object::[Информация о услуги со стоимостью выше средней] TO Buh_otdel;

GRANT SELECT on object::[Максимальная зарплата каждого сотрудника] TO Buh_otdel;

GRANT SELECT on object::[Разбиение зарплаты по группам] TO Buh_otdel;

GRANT SELECT on object::[Список должников c задолжностью >100000] TO Buh_otdel;

  1. Для работника отдела кадров была создана роль Otdel_kadrov и создан пользователь kadr, назначены следующие права:

create login kadr /*создаем логин kadr */

with password = '1111111' /*с паролем 1111111*/

create user kadr

for login kadr/*создаем пользователя kadr для логина kadr */

create role Otdel_kadrov /*создаем роль Otdel_kadrov */

EXEC sp_addrolemember 'Otdel_kadrov', 'kadr' /*добавляем пользователя kadr к роли Otdel_kadrov */

GRANT all PRIVILEGES oN object::Отделы TO Otdel_kadrov;

GRANT all PRIVILEGES oN object::Сотрудники TO Otdel_kadrov;

/*даем все привелегии для работы с таблицами*/

GRANT EXECUTE on object::[Список сотрудников старше выбраной даты] TO Otdel_kadrov;

GRANT EXECUTE on object::[Поиск сотрудников по отделу] TO Otdel_kadrov;

GRANT EXECUTE on object::[Выдача кол-во рабочих по должносстям по отделу+(count)] TO Otdel_kadrov;

GRANT EXECUTE on object::[Год рождения сотрудника (YEAR)] TO Otdel_kadrov;

GRANT EXECUTE on object::[Имеется ли запись о дате рождения сотрудника (ISDATE)] TO Otdel_kadrov;

GRANT SELECT on object::[Вывести информацию о сотрудниках с высшим образованием] TO Otdel_kadrov;

GRANT SELECT on object::[Выдать информацию о сотруднике по фамилии] TO Otdel_kadrov;

GRANT SELECT on object::[Информация о сотруднике с самой маленькой зарплатой] TO Otdel_kadrov;

GRANT SELECT on object::[Подсчитать количество сотрудников с высшем образованием] TO Otdel_kadrov;

GRANT SELECT on object::[Поиск информации о сотруднике по первой букве фамилии] TO Otdel_kadrov;

/*даем права для выборки для работы с представлениями*/

  1. Для работника диспетчерской была создана роль Dispetcherskaya и создан пользователь dispetcher, назначены следующие права:

create login dispatcher /*создаем логин dispatcher */

with password = '1111111' /*с паролем 1111111*/

create user dispatcher

for login dispetcher/*создаем пользователя dispatcher для логина dispatcher */

create role Dispetcherskaya /*создаем роль Dispetcherskaya */

EXEC sp_addrolemember 'Dispetcherskaya', dispatcher /*добавляем пользователя dispatcher к роли Dispetcherskaya */

GRANT all PRIVILEGES oN object::Заявки TO Dispetcherskaya

GRANT all PRIVILEGES oN object::Должники TO Dispetcherskaya

GRANT all PRIVILEGES oN object::Квартиросъемщики TO Dispetcherskaya

/*даем все привелегии для работы с таблицами*/

GRANT EXECUTE on object::[Вывести общую сумму задолжености по фамилии] TO Dispetcherskaya;

GRANT EXECUTE on object::[Выдача даты подачи заявки с определением дня недели] TO Dispetcherskaya;

GRANT EXECUTE on object::[Выдача квартиросъемщиков по первой букве] TO Dispetcherskaya;

GRANT EXECUTE on object::[Изменение жилищных условий] TO Dispetcherskaya;

GRANT EXECUTE on object::[Кол-во заявок за выбраный период] TO Dispetcherskaya;

GRANT EXECUTE on object::[Обновление статуса выбраной заявки] TO Dispetcherskaya;

GRANT EXECUTE on object::[Поиск квартиросъемщика по фамилии ] TO Dispetcherskaya;

GRANT EXECUTE on object::[Список должников со средней задолжностью выше заданой] TO Dispetcherskaya;

GRANT SELECT on object::[Вывести список выполненых заявок] TO Dispetcherskaya;

GRANT SELECT on object::[Список должников c задолжностью >100000] TO Dispetcherskaya;

/*даем права для выборки для работы с представлениями*/

  1. Для работника производственно-технического отдела была создана роль Pto и создан пользователь pto , назначены следующие права:

create login pto/*создаем логин pto */

with password = '1111111' /*с паролем 1111111*/

create user pto

for login pto/*создаем пользователя pto для логина pto */

create role Pto/*создаем роль Pto */

EXEC sp_addrolemember 'Pto', pto /*добавляем пользователя pto к роли Pto */

GRANT all PRIVILEGES oN object::Договор TO Pto;

GRANT all PRIVILEGES oN object::Дома TO Pto;

GRANT all PRIVILEGES oN object::Квартиры TO Pto;

/*даем все привелегии для работы с таблицами*/

GRANT EXECUTE on object::[Вывод данных об договорах определнного дома (DATENAME)] TO Pto;

GRANT EXECUTE on object::[Выдать адреса домом по жилой площади] TO Pto;

GRANT EXECUTE on object::[Количество n-комнатных квартир] TO Pto;

GRANT EXECUTE on object::[Показать договора с определенной услугой] TO Pto;

GRANT EXECUTE on object::[Показать договора с определенной услугой] TO Pto;

/*даем права для выборки для работы с представлениями*/

GRANT SELECT on object::[Информация о домах c общей площадью >100] TO Pto;

GRANT SELECT on object::[Информация о домах c общей площадью >100] TO Pto;

4. Результаты тестирования информационной системы

В результате тестирования системы был создан журнал тестирования для хранимых процедур, триггеров, форм, запросов. Проведенное тестирование разработанной информационной системы показало, что она работает корректно и готова к использованию. С данной системой могут работать пять пользователя, которые различаются по выполняемым с базой данных действиям, то есть система является многопользовательской.

Для нормальной работы системы необходимо 256 Мбайт оперативной памяти, Windows NT/2000/XP и выше, Access2000 и выше.

После тестирования получены следующие результаты:

- информационная система поддерживает многопользовательский режим;

- тестирование запросов, форм, хранимых процедур и триггеров прошло успешно.

В данном курсовом проекте разработана база данных с многопользовательским клиентским приложением, которая хранится на SQL сервере. Для каждого пользователя составлены запросы и формы. Формы составлены на основе запросов, и используются для занесения информации в базу данных и ее последующего извлечения.