Диплом: Разработка мер обеспечения безопасности баз данных программного комплекса "Системы сопровождения ремонта для мастерских "Росполёт"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
28
Хранимая в БД информация должна быть устойчива по отношению
к неблагоприятным физическим воздействиям (аппаратные ошибки, сбои пита-
ния) и ошибкам в программном обеспечении. Из-за чего разработчики преду-
сматривают механизмы восстановления данных. Причем восстановление должно
произойти за предельно короткое время до «первоначального» состояния базы
данных, то есть того, которое было перед разрушением.
Вопросы управления доступом и поддержания целостности БД тесно со-
прикасаются между собой, и во многих случаях для их решения используются
одни и те же механизмы. Различие же состоит в том, что управление доступом
связано с предотвращением преднамеренного разрушения БД, а управление це-
лостностью - с предотвращением непреднамеренного внесения ошибки [15].
Поэтому для каждого пользователя должны быть ограниченные учетные
записи, защищенные паролем. Доступ к общедоступным директориям разграни-
чен в соответствии с группами пользователей.
Защита информации достигается различными инструментами, в зависимо-
сти от используемой операционной системы.
1.3. Анализ существующих разработок и выбор стратегии автоматизации
«КАК ДОЛЖНО БЫТЬ»
База данных это совокупность материалов, систематизированных в такой
форме, чтобы с ними можно было работать с помощью вычислительной техни-
ки. Данные могут быть представлены в виде цифр, расчетов, статей, норматив-
ных актов и прочее [1].
Библиотеки, архивы, картотеки и другие материалы, содержащиеся на бу-
мажных носителях, базами данных не являются.
Само по себе такое электронное хранилище не имеет смысла без системы
её управления – СУБД (система управления базой данных), которая представля-
ет собой совокупность языковых и программных средств и осуществляет доступ
к данным. Она позволяет создавать, менять и удалять, при этом обеспечивает
безопасность данных. Осуществляет СУБД доступ к данным посредством струк-
турированного языка запросов – SQL. На рисунке 5 показана простейшая схема
базы данных [23].
29
Рис.5. Схема базы данных
Разделяют базы данных по разным признакам, поэтому классификация их
обширная и разнохарактерная.
Принципиальное отличие БД в широком смысле по использованию – од-
нопользовательские (предназначенные для создания и использования БД на
персональном компьютере) и многопользовательские (предназначенные для ра-
боты с единой БД нескольких компьютеров, объединенных в локальные сети).
На рисунке 6 [14] представлена схема, которая дает наглядное представление та-
кого деления.
Рисунок 6 – Деление БД по характеру использования
однопользовательская
распределенная
централизованная
с последовательным
доступом
с параллельным
доступом
многопользовательская
SQL- запрос
данные
система
управления базой
данных
БАЗА
ДАННЫХ
30
Наиболее известные однополь- зовательские СУБД - Microsoft Visual
FoxPro и Access, многопользовательские - MS SQL Server, Oracle и MySQL.
Хранилища данных включает в себя два компонента: хранимая информа-
ция (собственно БД) и программы управления (СУБД). Обеспечение безопасно-
сти хранимой информации невозможно без обеспечения безопасного управления
данными. Вопросы безопасности СУБД можно разделить на две категории:
1. Зависящие от данных;
2. Независящие от данных.
К числу независящих разрушений данных является доступ к БД. Обычно в
СУБД для идентификации и проверки подлинности пользователей применяются
соответствующие механизмы операционной системы.
При создании баз данных для конкретного заказчика, учитываются уни-
кальные требования и специфика работы этого предприятия. Для манипулиро-
вания данными в заданном сочетании БД необходимо структурировать.
Структурирование - это набор соглашений о способах представления дан-
ных. Таких моделей может быть неограниченное количество. Однако для созда-
ния универсальных СУБД выделяют шесть моделей:
Иерархическая;
Объектная и объектно-ориентированная;
Объектно-реляционная;
Реляционная;
Сетевая;
Функциональная.
Реляционная модель требует от системы управления высокого уровня
сложности. Она стала преобладающим инструментом хранения больших масси-
вов информации. Развитые информационные приложения полагаются на много-
пользовательские СУБД. Из-за чего обеспечение информационной безопасности
СУБД, и в первую очередь их серверных компонентов, приобретает решающее
значение для безопасности организации в целом.
В реляционной модели база данных представляет собой централизованное
хранилище таблиц, которое позволяет безопасно работать с информацией не-
скольким клиентам одновременно.
31
Объектно-ориентированная
база данных (ООБД) позволяет про-
граммистам, которые работают с языками третьего поколения, представлять
свою информацию объектами, которые хранятся в памяти [23].
Дополнительный интерфейсный уровень абстракции обеспечивает пере-
хват запросов, обращающихся к тем частям базы данных, которые находятся в
постоянном хранилище на диске. Изменения объектов, которые вносят разра-
ботчики, легко переносятся на диск
Реляционные и объектно-реляционные СУБД
В сравнении с рассмотренными выше моделями реляционная модель тре-
бует от системы управления гораздо более высокого уровня сложности.
Эти системы стали доминирующим инструментом хранения больших мас-
сивов информации. Развитые информационные приложения полагаются на мно-
гопользовательские СУБД, выполненные в технологии клиент/сервер [10]. В
этой связи обеспечение информационной безопасности СУБД, и в первую оче-
редь их серверных компонентов, приобретает решающее значение для безопас-
ности организации в целом.
В реляционной модели база данных представляет собой централизованное
хранилище таблиц, которое позволяет безопасно работать с информацией не-
скольким клиентам одновременно.
В строках таблиц часть полей содержит данные, относящиеся непосред-
ственно к записи, а часть являются ссылками на записи других таблиц. Таким
образом, связи между записями являются неотъемлемым свойством реляцион-
ной модели [24].
Каждая запись таблицы имеет одинаковую структуру. Например, в табли-
це, содержащей клиентскую базу, у всех записей будет один и тот же набор по-
лей: фамилия, имя, отчество и так далее.
В реляционных СУБД применяется язык SQL, позволяющий формулиро-
вать произвольные, нерегламентированные запросы. Это язык четвертого поко-
ления, поэтому любой пользователь может быстро научиться составлять запро-
сы. К тому же, существует множество приложений, позволяющих строить логи-
32
ческие схемы запросов в графическом виде. Все это происходит за счет уже-
сточения требований к производительности компьютеров.
Надо заметить, что из-за различий в реализации языка SQL реляционные
базы могут выдавать ошибку, хотя в этом случае предъявлять претензии к реля-
ционной модели не имеет смысла.
Каждая реляционная СУБД реализует кроме определенного подмножества
стандарта SQL набор уникальных команд. Это весьма усложняет задачу про-
граммистам, которые хотят перейти от одной СУБД к другой. Приходится де-
лать выбор между максимальной переносимостью и максимальной производи-
тельностью. В первом случае нужно придерживаться минимального общего
набора команд, поддерживаемых в каждой СУБД. Во втором - программист ра-
ботает в конкретной СУБД, используя преимущества ее уникальных команд и
функций.
Наиболее используемые реляционные СУБД – MySQL, MySql, PostgreSql,
Visual FoxPro, Access, Clarion, Jngres, Oracle.
Объектно-реляционные СУБД.
Есть ряд правил, которыми руководствуется реляционная база данных при
выполнении запроса. Разные реляционные базы данных по-своему подходят к
процессу выполнения запроса; однако, фундаментальные концепции, которым
они следуют, едины для всех.
Очевидно, что выполнить запрос необходимо с наименьшими затратами
ресурсов. Применительно к базам данных это означает уменьшение числа опе-
раций обращения к диску [19].
При проектировании информационных систем с использованием ОРСУБД
возникает задача реализации объектно-ориентированного отображения. Суще-
ствует два способа решения этой проблемы, часто называемых «сверху вниз» и
«снизу вверх».
Основная идея метода «сверху вниз» это начать с объектной модели, затем
произвести реляционную схему хранения данных.
Метод «сверху вниз» позволяет сосредоточиться на логике самого прило-
жения. При этом особое внимание уделяется обеспечению производительности и
33
целостности данных. Однако простое отображение «один - к - одному» меж-
ду классами и таблицами существует далеко не всегда.
Очень часто схему объектных данных нужно адаптировать под специфику
реляционного мира, которая приводит к низкой производительности, сильно
фрагментированным схемам и данных чрезмерной сложности.
На рисунке 7 показана форма объектно-реляционного отображения [17].
Классы отображаются на таблицы, атрибуты отображаются на поля таблиц.
Рис. 7 Форма отображения «один к одному»
Классификация СУБД по архитектуре
При выполнении основных функций СУБД должна использовать различ-
ные описания данных. То есть иметь определенною архитектуру.
По архитектуре СУБД делят на следующие категории:
файл/серверные – данные располагаются на файл-сервере и являются
пассивным источником;
клиент/серверные - имеют в своем составе выделенный сервер БД,
принимающий на себя функции обработки запросов пользователей;
КЛАСС 1
ОБЪЕКТ 1
ОБЪЕКТ 2
КЛАСС 2
ПОТОМОК КЛ.1
ОБЪЕКТ 3
ОБЪЕКТ 4
ТАБЛ. ДЛЯ
КЛАССА 1
ПОЛЕ ДЛЯ
ОБЪЕКТА
1
ПОЛЕ ДЛЯ
ОБЪЕКТА 2
ТАБЛ. ДЛЯ
КЛАССА 1
Поле для
объекта 1
Поле для
объекта 2
ТАБЛ. ДЛЯ
КЛАССА 2
Поле для
объекта 3
Поле для
объекта 4
34
многоуровневые.
Рассмотрим подробно Многоуровневые (многозвенные) БД, как самые
востребованные. Они имеют в своем составе, кроме сервера БД и приложений-
клиентов, один или несколько серверов приложений. Сервер приложе-
ний является промежуточным уровнем, обеспечивающим организацию взаимо-
действия клиентов и сервера БД.
Наиболее популярна трехуровневая модель:
1. Уровень данных - отвечает за хранение данных. Для него выделяется
отдельный мощный компьютер, на котором устанавливают один из SQL -
серверов (например, InterBase) [9]. Клиентские компьютеры непосредственно с
этим уровнем не связаны.
2. Снижение трафика сети. За счет возможности отложенной обработки
данных значительно снижается нагрузка на сеть.
На рисунке 8 показана трехуровневая модель многоуровневой архитекту-
ры баз данных [21].
Рис. 8. Трехуровневая модель СУБД
На рисунке 8 видно, что компьютер сервера базы данных вместе с данны-
ми содержит один из SQL -серверов. На клиентском компьютере, помимо ком-
понентов доступа к данным, располагается только компонент связи с сервером
приложений без механизмов доступа к данным.
Такая архитектура облегчает распространение приложений и позволяет в
качестве рабочих мест использовать дешевые, неприхотливые компьютеры.
При небольшом количестве клиентов есть возможность отказаться от ис-
пользования SQL-сервера, расположив данные на самом сервере приложений, и
используя к ним обычный локальный доступ через механизм BDE, ADO и им
35
подобные. Более того, возможно ис- пользовать обычные таблицы
Paradox или MS Access, что гораздо удобнее, чем в файл/серверной структуре.
Таким образом, многоуровневая архитектура имеет большие преимуще-
ства перед клиент/серверной и файл/серверной архитектурами, а именно:
Возможность использовать дешевые клиентские компьютеры;
Облегчает распространение приложений;
Централизованная бизнес-логика, когда бизнес-логика хранится на
уровне сервера приложений, и при ее изменении клиенты сразу получают
возможность работать по новым правилам.
В последнее время наиболее популярна СУБД Microsoft SQL
Server. Система управления реляционными базами данных, разработанная кор-
порацией Microsoft.
SQL Server - база данных, которая признается наименее уязвимой по ре-
зультатам тестов на уязвимость в Национальном институте стандартов и техно-
логий США (NIST). С помощью SQL Server можно создать важные интеллекту-
альные приложения для оперативной обработки транзакций (OLTP) с уникаль-
ной масштабируемостью, производительностью и доступностью [12].
Язык запросов Transact-SQL является реализацией стандарта ANSI/ISO по
структурированному языку запросов (SQL) с расширениями. Используют его
для работы с базами данных различных размеров, от небольших баз до крупных.
Transact-SQL успешно конкурирует с другими СУБД [8].
Команды SQL используются для извлечения и обновления записей в базах
данных. Этот компьютерный язык работает с такими СУБД, как MS Access,
DB2, Informix, MS SQL Server, Oracle, Sybase и другими.
Ниже приведен пример работы СУБД в SQL. В таблице 8 представлена
простейшая (содержащая только одну таблицу) база данных с названием
«Geography».
Таблица 8
База данных «Города»
City
(Город)
latitude
(Широта)
longitude
(Долгота)
time zone
(Часовой пояс)
Мурманск
68°58′00″ с. ш.
33°05′00″ в. д.
UTC +3
36
Архангельск
64°33′00″ с. ш.
40°32′00″ в. д.
UTC +3
Красноярск
56°00′43″ с. ш.
92°52′17″ в. д.
UTC +7
Каир
30°03′22″ с. ш.
31°14′22″ в. д.
UTC +2
Мадрид
40°24′00″ с. ш.
3°41′00″ з. д.
UTC+1, летом +2
SQL запрос; SELECT City FROM Geography
Полученный ответ занесен в таблицу 9:
Таблица 9
Ответ, полученный на запрос SQL
Мурманск
Архангельск
Красноярск
Каир
Мадрид
Таким образом, получена выборка из базы данных - названия городов.
2. Бизнес-уровень - предназначен для получения данных с первого уровня,
выполнения окончательной проверки данных, и служит посредником между
клиентами и данными. Здесь находятся сервера приложений.
3. Уровень представления данных (или графического интерфейса пользо-
вателя) находится на клиентских компьютерах. Здесь полученные данные отоб-
ражаются в таких компонентах вывода данных, как DBGrid, DBEdit, DBMemo.
1.3.1 Анализ существующих разработок для обеспечения
безопасности задачи
Рассмотрим некоторые системы, обеспечивающие безопасность СУБД:
1. В Oracle существует SQL-оператор CONNECT, который имеет вид [11]:
CONNECT ПОЛЬЗОВАТЕЛЬ [/пароль] [@база данных]:
37
Перед началом работы с серве- ром баз данных, пользователь иденти-
фицируется своим именем, а средством аутентификации служит пароль, то есть
вводит логин и пароль. Тем самым определяется конкретный пользователь и
конкретная СУБД.
2. Active Directory на Windows Server 2008. Службы Active Directory яв-
ляются ролью серверных операционных систем Microsoft Windows Server, име-
ющие широкие возможности масштабирования. В структуре Active Directory
может быть создано более 2-х миллиардов объектов, что позволяет внедрять
службу каталогов в компаниях с сотнями тысяч компьютеров и пользователей.
Неоспоримым преимуществом службы Active Directory является постоян-
ная защита. Можно защитить содержимое, передаваемое за пределы организа-
ции. Можно указать, кому разрешается открывать, изменять, печатать содержи-
мое или управлять им, и все назначенные права сохраняются вместе с содержи-
мым.
3. Система электронного документооборота «Евфрат» компании
Cognitive Technologies - мощный многофункциональный продукт. Возможности
«Евфрата» предусматривают полную автоматизацию электронного документо-
оборота на предприятиях любых размеров.
Под управлением этой программы делопроизводство предприятия пред-
ставляет собой единый механизм, в котором каждый элемент находится на отве-
денном ему месте. Все производимые с документами действия строго регламен-
тированы. В программе реализованы широкие возможности для формирования
отчетов по делопроизводству [16].
Однако есть существенный недостаток: инструменты описания маршрутов
документов реализованы довольно слабо. Так же отсутствует функционал, необ-
ходимый для реализации данного проекта.
4. Система автоматизации деятельности предприятия «1С: Предприя-
тие». Система универсальна, поэтому может быть использована для автоматиза-
ции различных участков экономической деятельности предприятия таких как:
учета товарных и материальных средств,
взаиморасчетов с контрагентами,
расчета заработной платы,

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран