Добавил:
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). || Если мой материал вам помог - можете написать мне 'Спасибо', мне будет очень приятно :) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
5
Добавлен:
18.05.2022
Размер:
459.4 Кб
Скачать

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

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

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

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

КАФЕДРА 41

ОЦЕНКА

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

кандидат технических наук

С. Г. Толмачев

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

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

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

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

НАЗНАЧЕНИЕ ПРАВ ДОСТУПА К ОБЪЕКТАМ БАЗЫ ДАННЫХ

по дисциплине: Информационные системы и технологии

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

СТУДЕНТ ГР. №

Z9411

Р. С. Кафка

номер группы

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

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

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

2019/3603

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

Цель работы: получение практических навыков по ограничению доступа к данным в MS Access

Индивидуальное задание: 7 вариант:

Обращения к врачу (Учетный номер, Код пациента, Код врача, Специализация

врача, Диагноз, Дата обращения, Оплата за прием, Стоимость лечения, Сумма к

оплате (вычисляемое поле)).

Пациенты (Код пациента, Фамилия, Имя, Отчество, Пол, Год рождения);

Врачи (Код врача, Фамилия, Специализация, Категория, Оплата за прием).

  1. На каждую ранее созданную форму пользовательского интерфейса определить категории пользователей, которой будет предоставлен доступ к информации.

  2. Для каждой роли на форме предусмотреть возможные действия со свойствами формы и полей:

    1. Свойства формы

  • Изменение

  • Удаление

  • Добавление

  • Ввод данных

    1. Свойства полей

  • Блокировка

  • Доступ

  • Вывод на экран

  1. Разработать макрос для прохождения авторизации пользователям в ролях администратора БД и пользователя БД (роли пользователей можно выбрать самостоятельно).

Ход работы:

Открыл базу данных, созданную при выполнении лабораторной работы №1.

  1. В свойствах формы заблокировал следующие пункты:

  • изменение;

  • удаление;

  • добавление;

  • ввод данных.

Рисунок 1 – Ограничение доступа в свойствах формы

  1. В свойствах полей заблокированы следующие пункты для поля “Код пациента”:

  • блокировка;

  • доступ;

  • вывод на экран.

Рисунок 2 - Ограничение доступа в свойствах полей

  1. Разделил полномочия на основе ролей. В табл.1 показаны действия по модификации данных для пользователей, которым присвоены роли: клиента, менеджера или директора, администратора БД.

Таблица №1 - Права пользователей

Действия

Клиент

Врач

Администратор БД

Просмотр

да

да

да

Добавление

нет

да

да

Удаление

нет

нет

да

Обновление

нет

нет

да

Изменение структуры БД

нет

нет

да

  1. В режиме Конструктор создал форму авторизации, состоящую из 4 полей и двух кнопок. Поля 1 и 2 предназначены для ввода пароля и логина пользователя. В полях 3 и 4 сохранены данные о выданных идентификаторах (рис.3).

  2. Реализовал две кнопки. На кнопку Авторизация в дальнейшем будет назначен макрос на открытие формы Пациенты. При нажатии на кнопку Выход предусмотрел действие Выход из приложения Access (рис. 4).

Рисунок 3 - Форма авторизации в режиме Конструктор

Рисунок 4 - Назначение действия на кнопку Выход

В окне свойств кнопок измените подписи кнопок на Авторизацию и Выход.

  1. Задал параметры формы Авторизации.

Таблица №2 – Параметры формы Авторизации

Полосы прокрутки

отсутствуют

Область выделения

нет

Область выбора записей

нет

Кнопка оконного меню

нет

Всплывающее окно

да

Модальное окно

да

Тип границы

тонкая

  1. Определил параметры полей 1 и 2 для ввода пароля и логина.

Таблица №3 – Параметры для полей 1 и 2

Имя поля 1

Логин

Имя поля 2

Пароль

Для ввода пароля задал маску ввода (рис. 5).

Рисунок 5 – Создание маски ввода на поле Пароль

  1. Удалил описание полей 3 и 4 и установил свойства отображения на экран.

Таблица №4 – Параметры для полей 3 и 4

Имя поля 3

ПарольБД

Имя поля 4

ЛогинБД

Вывод на экран

нет

  1. Задал параметры идентификации пользователей (рис.6-7)

Рисунок 6 – Значение поля ЛогинБД

Рисунок 7 – Значение поля ПарольБД

  1. Написал макрос для кнопки Авторизация. Для этого в окне свойств кнопки на вкладке Событие выберал Нажатие кнопки>Кнопка с тремя точками>Построитель и выполнил переход в область макрорекодера.

Для получения доступа к БД пользователь вводит пароль и логин. Если они совпадают с хранящимися в БД значениями идентификаторов, то в окне сообщений будет выведено «Успешная авторизация», затем автоматически закроется окно формы авторизации. В случае неправильного ввода значений появится окно сообщением «Ошибка авторизации, повторите ввод».

Программный код на алгоритмическом языке представлен на рисунке 8.

Рисунок 8 – Макрос Авторизация пользователя

  1. Сохранил макрос в окне макрорекодера и закрыл область ввода.

  2. Сохранил базу данных для фиксации программного кода макроса авторизации.

  3. Выполнил макрос (рис.9-10).

    Рисунок 9 – Успешная авторизация

    Рисунок 10 – Ошибка авторизации

  4. Изменил параметры запуска БД. Для этого выполнил команду Файл>Параметры>Текущая база данных>Форма просмотра: Авторизация (рис.11).

Рисунок 11 - Изменение параметров при открытии БД

  1. Организовал доступ к информации, хранящейся в БД. Для этого создал таблицу для идентификатора для каждого сотрудника (рис. 12).

Рисунок 12 – Идентификаторы пользователей

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

Параметры идентификации позволяют открыть другую форму или конкретную таблицу, через которую сотрудники смогут работать с данными (рис.13).

Рисунок 13 – Макрос открытие формы после успешной авторизации

Вывод:

В ходе Лабораторной работы я получил практические навыки по ограничению доступа к данным в MS Access. Также хочу отметить, что ограничить доступ к базе данных к MS Access можно с помощью стандартной опции через Файл>Сведения>Зашифровать с использованием пароля. Перед этим нужно открыть базу данных с монопольным доступом. Однако это больше подходит, когда база данных не рассчитана на большое количество людей и не требуется ограничение по ролям. Ограничение доступа через формы позволяет настроить доступ более гибко: для нескольких пользователей, сделать оформление авторизации и т.п.

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

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

1. Справочная служба MS Office. URL: http://support.office.microsoft.com (дата посещения 19.01.2022).

Соседние файлы в папке Лабораторные работы