
2 / 5
.docxМИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
Кафедра проблемно-ориентированных вычислительных комплексов
ПРЕПОДАВАТЕЛЬ
Доцент, канд. техн. наук |
|
|
|
С.Г. Толмачев |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
Лабораторная работа №5
НАЗНАЧЕНИЕ ПРАВ ДОСТУПА К ОБЪЕКТАМ БАЗЫ ДАННЫХ
по курсу: Информационные системы и технологии
СТУДЕНТКА ГР. № |
Z0411 |
|
14.01.23 |
|
М. В. Карелина |
|
|
номер группы |
|
подпись, дата |
|
инициалы, фамилия |
Номер студенческого билета: 2020/3477
Санкт-Петербург
2023
Цель работы: получение практических навыков по ограничению доступа к данным в MS Access.
Вариант 10.
Порядок выполнения работы:
1. На каждую ранее созданную форму пользовательского интерфейса определить категории пользователей, которой будет предоставлен доступ к информации.
2. Для каждой роли на форме предусмотреть возможные действия со свойствами формы и полей:
2.1. Свойства формы
– Изменение
– Удаление
– Добавление
– Ввод данных
2.2. Свойства полей
– Блокировка
– Доступ
– Вывод на экран
3. Разработать макрос для прохождения авторизации пользователям в ролях администратора БД и пользователя БД (роли пользователей можно выбрать самостоятельно).
Данная работа основана на таблицах «Путевки» (Рис.1), «Маршруты» (Рис.2) и «Клиенты» (Рис.3), реализованных в лабораторной работе №1.
Рисунок
1. Таблица Путевки
Рисунок 2. Таблица Маршруты
Рисунок 3. Таблица Клиенты
На каждую ранее созданную форму пользовательского интерфейса определим категории пользователей, которой будет предоставлен доступ к информации.
Таблица 1. Права пользователей
|
Менеджер |
Администратор |
Директор |
Просмотр |
да |
да |
да |
Добавление |
нет |
да |
да |
Удаление |
нет |
нет |
да |
Изменение |
нет |
да |
да |
Обновление |
нет |
нет |
да |
Для получения доступа к информации базы данных сотрудникам туристической фирмы необходимо подтверждать права доступа - вводить пароль и логин на форме авторизации. Администратор БД решил воспользоваться макрорекодером для написания программного кода проверки подлинности полномочий.
Создадим форму авторизации по паролю и логину.
В режиме Конструктор создадим форму авторизации, состоящую из 4 полей и двух кнопок. Поля Логин и Пароль предназначены для ввода данных для входа. В остальных двух полях сохранены данные о выданных идентификаторах.
Реализуем две кнопки. На кнопку Авторизация в дальнейшем будет назначен макрос на открытие формы Заказы. При нажатии на кнопку Выход предусмотрим действие Выход из приложения Access (Рис. 4).
Рисунок 4. Форма авторизации в режиме Конструктор
Далее зададим параметры:
Полосы прокрутки – отсутствуют
Кнопки навигации – нет
Область выбора записей – нет
Кнопка оконного меню – нет
Всплывающее окно – да
Модальное окно – да
Тип границы – тонкая
Зададим полям для ввода имена Логин и Пароль. Для поля Пароль зададим маску ввода (Рис. 5).
Рисунок 5. Создание маски ввода на поле Пароль
Оставшимся двум полям зададим имена ПарольБД и ЛогинБД и отключим вывод на экран.
Далее напишем макрос для кнопки Авторизация. Для этого в окне свойств кнопки на вкладке Событие выберем Нажатие кнопки>Кнопка с тремя точками>Построитель и выполните переход в область макрорекодера (Рис. 6). Для получения доступа к БД пользователь вводит пароль и логин. Если они совпадают с хранящимися в БД значениями идентификаторов, то в окне сообщений будет выведено «Успешная авторизация», затем автоматически закроется окно формы авторизации. В случае неправильного ввода значений появится окно сообщением «Ошибка авторизации, повторите ввод».
Рисунок 6. Поле макрорекордера для авторизации
Сохраним макрос и базу данных.
Также для защиты данных выключим контекстные меню, кнопку оконного меню и кнопку закрытия.
Изменим параметры запуска БД. Для этого выполним команду Файл>Параметры>Текущая база данных>Форма просмотра: Авторизация.
Проверим работу формы и макроса (Рис. 7-8).
Рисунок 7. Успешная авторизация
Рисунок 8. Ошибка авторизации
Далее также через макрорекордер добавим функции входа с разными правами для пользователей работник (только чтение) и менеджер (разрешены просмотр, добавление и изменение).
Для начала создадим копии формы заказы – Заказы менеджер и Заказы администратор.
В свойствах формы Заказы менеджер заблокируем следующие пункты (Рис. 9):
изменение;
удаление;
добавление;
ввод данных.
Рисунок 9. Ограничечение доступа в свойствах формы
В свойствах полях заблокируем их (Рис. 10).
Рисунок 10. Блокировка полей
Поля Цена, Скидка и Сумма к оплате заблокируем на вывод на экран (Рис. 11).
Рисунок 11. Блакировка вывода на экран
В форме администратора аналогично отключим возможность удаления, оставив добавление и изменение (Рис. 12). Блокировку полей производить не будем.
Рисунок 12. Ограничечение доступа в свойствах формы
Теперь вернемся к форме авторизации.
Добавим на нее скрытые поля для предсохраненных логинов для доступа менеджера и работника (Рис. 13).
С помощью значения по умолчанию внесем туда логины и пароли:
для администратора manager / 1234;
для менеджера user / 12345.
Теперь изменим макрос кнопки авторизации (Рис. 13).
Рисунок 13. Макрос кнопки для разных пользователей
Сохраним макрос и форму и протестируем авторизацию.
Для директора БД (Рис. 14):
Рисунок 14. Авторизация под директором
При проверке все функции работы с формой доступны.
Далее протестируем вход под менеджером (Рис. 15).
На тестах удаление записей под этим пользователем недоступно.
Проведем тест входа под работником (Рис. 16).
Рисунок 15. Авторизация под администратором
Рисунок 16. Авторизация под менеджером
Поля у такого пользователя заблокированы, Цена, Скидка и Стоимость не выводятся на экран (Рис. 17).
Рисунок 17. Форма для менеджера
Вывод
В ходе данной лабораторной работы мы создали форму авторизации для пользователей, залогиниться в которую предлагается при входе в базу данных MS Access. Разработаны категории пользователей, которым будет предоставлен доступ к информации при входе с разными логинами и паролями. Для некоторых пользователей формы и поля заблокированы.
Список использованных источников:
1. Справочная служба MS Office. URL: http://support.office.microsoft.com (дата посещения 09.01.2022).
2. Методические указания: https://pro.guap.ru/get-task/eb63d4b64221cbdfe376a0a314d85c68