ДИПЛОМ.ppt
- Количество слайдов: 19
Дипломная работа Тема: Система защиты программно-информационного комплекса ФГУ «Центр социальных технологий Росздрава» Выполнил: Студент группы КЗОИ-Д-5 Киреенко А. Е. Руководитель: доц. Баранова Е. К.
Цель дипломной работы Разработка программно-информационного комплекса (ПИК) для автоматизации деятельности производителя по расчету планов (прогнозов) производства, затрат сырья и поставки изделий. А также создание комплексной системы защиты ПИК, включающей: Ш разграничение полномочий пользователей при входе в систему на основе парольной аутентификации (с ограничением на вводимые пароли и применением криптографического алгоритма хеширования паролей); Ш защиту от несанкционированного доступа файла с учетными данными пользователей (шифрование файла при помощи криптографического интерфейса ОС Windows - Crypto. API); Ш защиту базы данных от несанкционированного доступа (проверка пароля и аутентификация пользователей при подключении к БД); Ш защиту ПИК от несанкционированного использования и копирования.
Основные задачи дипломной работы Ш изучение процессов и алгоритмов функционирования производства и их описание; Ш изучение структуры и состава обрабатываемой информации; Ш выявление требований к ПИК со стороны заказчика; Ш анализ методов и средств защиты циркулирующей информации; Ш составление технического задания на разработку ПИК; Ш разработка ПИК и применение системы защиты.
Структура программы ь ь ь БД MS Access Изменяющиеся данные (. xls): (. xls) прогнозы потребностей в изделиях на несколько месяцев (заказчики X, Y, Z); план производства на несколько недель (в основном 12 недель) (заказчик X); планы производства на несколько дней (в основном 10 дней) (заказчики X, Y, Z). ь ь ь ПРОГРАММА Обработка данных и формирование результата ь ь ь Постоянные данные (справочники): наименования изделий; наименования артикулов изделий (SAP); наименования (SAP) мощности (производительность) машин; мощности (производительность временные затраты по переналадке машин; временные затраты нормы расходов сырья по изделиям. нормы изделиям. формирование сводов с общим количеством заказов по месяцам/неделям/дням; формирование плана производства изделий на месяц; расчет затрат сырья на месяц. Результат (. xls): (. xls) план производства изделий; затраты сырья.
Алгоритм защиты (установка программы) ЗАПУСК Сбор информации о компьютере, хеширование, подпись ключом ЭЦП пользователя и запись в реестр Копирование системной базы данных MS Access (c данными о пользователях и группах, заданными по умолчанию) ЗАВЕРШЕНИЕ Собирается следующая уникальная информация: имя пользователя; имя компьютера; путь к папке с ОС Windows; путь к папке с системными файлами ОС Windows; объем, метка тома, файловая система диска, на который установлена программа. Подпись записывается в реестр Windows в раздел HKEY_CURRENT_USER HKEY_ CURRENT_ Software Имя пользователя Системная база данных MS Access используется для защиты БД на уровне пользователей
Алгоритм защиты (запуск программы) ЗАПУСК Собирается та же информация, что и при установке. Подпись считывается из раздела реестра HKEY_CURRENT_USER Software HKEY_ CURRENT_ Имя пользователя Сбор информации о компьютере, хеширование, проверка ЭЦП нет ЭЦП совпадает да Ввод парольной фразы Ключ расшифрования генерируется из хешзначения парольной фразы Расшифрование файла с учетными записями нет Файл расшифрован да 1 2
Алгоритм защиты (запуск программы) 1 Ввод имени пользователя и пароля В файле учетных записей сохраняется хеш-значение пароля, которое получается в результате комбинированного шифрования имени учетной записи пользователя на ключе, равно м паролю, сначала перестановкой, а затем гаммированием. Проверка наличия учетной записи в файле. Хеширование введенного пароля. Сравнение хеш - значений Хеш-значения совпадают нет Пароль пользователь задает при первом входе в систему. Позже его можно изменить в меню системы. На вводимый пароль действует ограничение: в пароле должны присутствовать заглавные, прописные буквы и цифры, а также он должен быть не короче 6 символов. 2 да Подключение к базе данных на основе парольной фразы, вводимой для расшифрования файла с учетными записями, а также персональных данных пользователя (имени и пароля) (имени пароля) нет БД подключена да Отображение главной формы программы ЗАВЕРШЕНИЕ
Функции системы В соответствии со структурой программа осуществляет выполнение следующих функций: аутентификация пользователей при входе в систему; хеширование паролей пользователей и хранение имени пользователя и хеш значения пароля в файле учетных записей (ограничение на вводимые пароли); шифрование файла с учетными данными при помощи криптографического интерфейса ОС Windows (Crypto. API) защита файла базы данных от несанкционированного доступа; формирование плана производства изделий на месяц; формирование сводов с общим количеством заказов по месяцам/неделям/дням; расчет затрат сырья на месяц; добавление постоянных данных и ведение справочников: наименований изделий; наименований артикулов изделий (SAP); мощностей (производительности) машин; временных затрат по переналадке машин; норм расходов сырья по изделиям. загрузку изменяющихся данных (месяца, недели, дни): прогнозы потребностей в изделиях на несколько месяцев (заказчики X, Y, Z); план производства на несколько недель (в основном 12 недель) (заказчик X); планы производства на несколько дней (в основном 10 дней) (заказчики X, Y, Z);
Применяемые методы и средства защиты данных Авторизация пользователей при входе в систему на основе парольной аутентификации В программе применяются следующие методы повышения безопасности: • • ограничение минимальной длины пароля (не короче 6 символов); назначение стойких паролей (требование к наличию в пароле заглавных, прописных буквы и цифры). В файле учетных записей сохраняется хеш-значение пароля, получаемое в результате комбинированного шифрования имени учетной записи пользователя на ключе, равном его паролю, сначала перестановкой, а затем гаммированием.
Применяемые методы и средства защиты данных Защита от несанкционированного доступа файла с учетными данными пользователей Crypto. API Для усложнения задачи получения хеш - значения пароля, а также персональных данных пользователей системы предусмотрена функция шифрования файла с учетными данными при помощи криптографического интерфейса ОС Windows (Crypto. API) с использованием сеансового ключа, генерируемого на основе вводимой пользователем парольной фразы (с добавлением к ключу случайного значения – «соли» ). Он обеспечивает: Реализация всех алгоритмов (шифрования, цифровой подписи и т. п. ) полностью выведена из состава самого Crypto API и реализуется в отдельных, независимых динамических библиотеках – «криптопровайдерах» (Cryptographic Service Provider – CSP). Сам же Crypto API просто предъявляет определенные требования к набору функций (интерфейсу) криптопровайдера и предоставляет конечному пользователю унифицированный интерфейс работы с CSP. Конечному пользователю для полноценного использования всех функций криптопровайдера достаточно знать его строковое имя и номер типа. При шифровании в программе используется алгоритм Advanced Encryption Standard (AES, также известный как Rijndael), режим шифрования Cipher Block Chaining (CBC – сцепление блоков шифра) и алгоритм хеширования Secure Hash Algorithm (SHA).
Применяемые методы и средства защиты данных
Применяемые методы и средства защиты данных Защита БД MS Access от несанкционированного доступа MS Access обеспечивает два традиционных способа защиты базы данных: • установка пароля, требуемого при открытии базы данных; • защита на уровне определения прав пользователей, которая позволяет ограничить возможность получения или изменения той или иной информации в базе данных для конкретного пользователя. Защита базы данных при помощи пароля Пароль базы данных задается Администратором в меню Сервис – Защита – Задать пароль базы данных Защита на уровне прав пользователей создание системы пользователей, объединенных в группы (меню Сервис - Защита Пользователи и группы); установка прав доступа различных пользователей и групп по отношению к объектам базы данных (меню Сервис - Защита - Разрешения). Информация о системе пользователей сохраняется в специальном файле, называемом файлом системной базы данных (или файлом рабочих групп).
Применяемые методы и средства защиты данных Защита БД MS Access от несанкционированного доступа Технология доступа к данным ADO Доступ к БД осуществляется с помощью технология доступа к данным ADO (Microsoft Active. X Data Object). Все параметры подключения указываются в свойствах компонента ADOTable (для этого предназначена так называемая строка подключения – Сonnection. String): - провайдер (Provider); - драйвер; - расположение базы данных (Data Source); - пароль базы данных (Jet OLEDB: Database Password); - расположение файла системной базы данных (Jet OLEDB: System database); - имя пользователя (User ID) и пароль (Password); Пример строки подключения Connection. String элемента TADOTable: “Provider=Microsoft. Jet. OLEDB. 4. 0; Password=12345678; User ID=Admin; Data Source= F: База данныхdb 1. mdb; Persist Security Info=True; Jet OLEDB: System database=F: База данныхdb 1. mdw; Jet OLEDB: Database Password=12345” Если введенные имя пользователя и пароль совпадают с данными в файле системной БД, тогда доступ к БД разрешается и пользователю присваиваются определенные права доступа.
Применяемые методы и средства защиты данных Защита программного обеспечения от несанкционированного использования и копирования Для защиты этого предусмотрена программа – установщик, которая: 1. Собирает уникальную информацию о компьютере, с помощью функций из набора Windows API: имя пользователя (Get. User. Name); имя компьютера (Get. Computer. Name); путь к папке с ОС Windows (Get. Windows. Directory); путь к папке с системными файлами ОС Windows (Get. System. Directory); объем, метка тома, файловая система диска, на который устанавливается программа (Get. Volume. Information). 2. Хеширует эту информацию (средства Crypto API); 3. Подписывает ее личным ключом пользователя программы и записывает подпись в реестр Windows в раздел HKEY_CURRENT_USER Software Имя пользователя. 1. 2. 3. При запуске программа: Собирает уникальная информация о компьютере; Вычисляет хеш-значение этой информации; Считывает подпись из раздела реестра и проверяет ее с помощью открытого ключа пользователя. При неудачной проверке программа не запускается.
Загрузка данных из MS Excel Доступ к данным файлов MS Excel осуществляется за счет использования объектной модели MS Excel и конкретно центрального объекта Application (Excel. Application), включающего свойства, методы и события с помощью которых обеспечивается доступ к любой коллекции или внутреннему объекту приложения MS Excel или к компонентам открытых рабочих книг. OLE (Object Linking and Embedding) - технология связывания и внедрения объектов в другие документы и объекты. После инициализации переменной var. App (создания объекта автоматизации): var. App=Create. Ole. Object("Excel. Application"), можно пользоваться свойствами и методами созданного ole-сервера 1, а именно: Установка свойства. v. Var. App. Ole. Property. Set("имя", значение); Чтение значения свойства. переменная = app. Ole. Property. Get("имя"); Вызов метода: v. Var. App. Ole. Procedure("имя", список параметров метода); 1 OLE (Object Linking and Embedding) - технология связывания и внедрения объектов в другие документы и объекты. (Object Embedding)
Запись и чтение данных в/из MS Access Как уже было сказано, для обращения к базе данных MS Access используется технология доступа к данным ADO и компонент TADOTable, который позволяет работать с таблицей в базе данных через хранилище данных ADO. Каждой таблице базы данных соответствует компонент ADOTable. Методы компонента TADOTable: Append — добавить новую запись в конец таблицы. Cancel — отменить изменения текущей строки, если изменения еще не были сохранены с помощью метода Post. Close — закрыть таблицу. Delete — удалить текущую строку. Edit — перейти в режим редактирования. После этого можно изменять значения полей. Fieid. By. Name — найти поле по имени. В качестве единственного параметра нужно указать имя поля в виде строки. В результате получается ссылка на поле в виде объекта TFieid. First — перейти на первую строку в таблице. Insert — вставить новую строку в таблицу. Last — перейти на последнюю запись в таблице. Next — перейти на следующую запись. Post — принять все изменения. Prior — двигаться на предыдущую запись в таблице. Refresh — обновить информацию о данных. Обращение к отдельным полям набора данных осуществляется с помощью свойства Fields, которое является массивом или набором объектов TField, динамически создающимся во время выполнения приложения. Для табличного отображения на экране строк данных из компонента TADOTable а также вставки, уничтожения, редактирования данных БД используется компонент TDBGrid.
Заключение В результате проделанной работы была изучена предметная область, необходимая для разработки программно-информационного комплекса, задачей которого является автоматизация деятельности производителя по расчету планов производства, затрат сырья и поставки изделий. В дипломной работе были решены все поставленные задачи, а именно: был проанализирован и описан процесс функционирования производства; был изучен состав и структура обрабатываемой информации; в техническом задании были описаны требования к составу разрабатываемой системы и ее защите; в соответствии с этими требованиями были выбраны и описаны методы и средства загрузки, обработки и защиты данных и с их помощью разработана система; на основе этих методов и средств была разработана программа, позволяющая решать описанные в техническом задании задачи с использованием выбранных методов и средст в.
Заключение Экспериментальные результаты тестирования позволяют сделать вывод, что разработанная программа функционирует в соответствии с требованиями технического задания. Система позволяет: осуществлять добавление наименований изделий, наименований артикулов изделий (SAP), мощностей (производительности) машин, временных затрат по переналадке машин, норм расходов сырья по изделиям; осуществлять загрузку прогнозов потребностей в изделиях на несколько месяцев (заказчики X, Y, Z), плана производства на несколько недель (заказчик X), планов производства на несколько дней (заказчики X, Y, Z); вести базу пользователей системы; формировать план производства изделий на месяц, своды с общим количеством заказов по месяцам/неделям/дням; рассчитывать затраты сырья на месяц. При этом функционирование системы обеспечено программными средствами защиты информации с применением: разграничения полномочий пользователей при входе в систему на основе парольной аутентификации (с ограничением на вводимые пароли и применением криптографического алгоритма хеширования паролей); защиты от несанкционированного доступа файла с учетными данными пользователей; защиты базы данных от несанкционированного доступа (проверка пароля и аутентификация пользователей при подключении к БД); защиты программы от несанкционированного использования и копирования.
ДИПЛОМ.ppt