Техническое задание
на разработку программного средства
(в соответствии с ГОСТ 19.201–78)
1. Введение
1.1. Наименование программного средства
Программное средство DairyDemo.Auth — модуль авторизации информационной системы DairyDemo.
1.2. Назначение документа
Настоящее техническое задание определяет требования к разработке, функционированию и условиям эксплуатации программного средства авторизации пользователей.
Документ разработан в соответствии с требованиями ГОСТ 19.201–78 «Техническое задание. Требования к содержанию и оформлению».
2. Основания для разработки
Основанием для разработки программного средства является: - учебный план по специальности 09.02.07 «Информационные системы и программирование»; - задание на выполнение Модуля 4–5; - необходимость реализации механизма авторизации пользователей с разграничением прав доступа и защитой от несанкционированного доступа.
3. Назначение разработки
Программное средство предназначено для:
- аутентификации зарегистрированных пользователей;
- разграничения доступа по ролям «Администратор» и «Пользователь»;
- защиты системы от автоматизированного подбора паролей;
- блокировки учётных записей при превышении допустимого количества попыток входа;
- администрирования учётных записей пользователей.
4. Требования к программе
4.1. Требования к функциональным характеристикам
Программное средство должно обеспечивать:
- ввод логина и пароля пользователя;
- проверку корректности введённых данных;
- интерактивную капчу в виде пазла;
- автоматическую блокировку пользователя после трёх неудачных попыток входа;
- вывод сообщений об ошибках и успешной авторизации;
- переход на рабочий стол пользователя в зависимости от его роли;
- административный интерфейс управления пользователями.
4.2. Требования к надёжности
Программа должна:
- корректно обрабатывать ошибочные действия пользователя;
- не завершать работу аварийно при возникновении ошибок;
- обеспечивать целостность данных пользователей;
- сохранять информацию о попытках входа и блокировке учётных записей.
4.3. Условия эксплуатации
Программное средство должно функционировать при следующих условиях:
- операционная система: Microsoft Windows 10 / 11;
- архитектура: x64;
- режим эксплуатации: локальный, однопользовательский.
4.4. Требования к составу и параметрам технических средств
Для работы программного средства требуется:
- персональный компьютер;
- процессор не ниже Intel Core i3 или аналогичный;
- оперативная память не менее 4 ГБ;
- свободное место на диске не менее 200 МБ;
- установленная СУБД MySQL.
4.5. Требования к информационному обеспечению
В качестве хранилища данных используется база данных MySQL.
Программа должна обеспечивать: - хранение логинов пользователей; - хранение хэшей паролей (алгоритм BCrypt); - хранение информации о ролях пользователей; - хранение данных о неудачных попытках входа и блокировках.
4.6. Требования к программному обеспечению
Для функционирования программы требуется:
- платформа .NET 8.0;
- язык программирования C#;
- библиотека MySqlConnector для доступа к MySQL;
- библиотека BCrypt.Net для хэширования паролей.
4.7. Требования к защите информации
Программа должна обеспечивать:
- хранение паролей только в виде хэшей;
- использование криптографического алгоритма BCrypt;
- защиту от подбора паролей с помощью капчи;
- блокировку учётной записи после трёх неудачных попыток входа;
- ограничение доступа к административным функциям.
5. Требования к составу программных средств
Программное средство должно включать:
- модуль доступа к данным;
- модуль бизнес-логики авторизации;
- модуль хэширования паролей;
- пользовательский интерфейс авторизации;
- пользовательский интерфейс администратора.
6. Требования к документации
В процессе разработки должны быть подготовлены следующие документы:
- техническое задание;
- описание программы;
- руководство пользователя;
- исходные тексты программы.
7. Технико-экономические показатели
Разработка программного средства осуществляется в учебных целях.
Экономическая эффективность выражается: - в сокращении времени разработки типовых механизмов авторизации; - в повышении уровня безопасности информационной системы; - в возможности повторного использования разработанного модуля.
8. Стадии и этапы разработки
Разработка программного средства включает следующие этапы:
- Анализ требований;
- Проектирование структуры программы;
- Реализация программного кода;
- Тестирование;
- Подготовка документации.
9. Порядок контроля и приёмки
Контроль выполнения требований осуществляется путём:
- проверки соответствия реализованного функционала требованиям ТЗ;
- тестирования сценариев авторизации;
- проверки обработки ошибок;
- анализа корректности работы блокировки и капчи.
Программное средство считается принятым после успешного прохождения всех этапов проверки.
10. Приложения
Приложения к настоящему техническому заданию отсутствуют.