Смекни!
smekni.com

Обеспечение системы документооборота (стр. 12 из 20)

w  Mij ^ Is(Si)  I(Oj) ^ It(Si)  I(Oj) (2.6 б)

При невыполнении условия (2.6 б) запрос отвергается.

3. Запрос на дополнение субъектом Si объекта Oj разрешается, если выполняется условие:

a  Mij ^ It(Si)  I(Oj) (2.6 в)

При невыполнении условия (2.6 в) запрос отвергается.

4. Запрос на исполнение субъектом Si объекта Oj разрешается, если e  Mij, и отвергается - в противном случае.

5. Отказ субъекта Si от доступа x  G к объекту разрешается безусловно. При этом происходит изменение состояния системы :

b' = b  {Si,Oi,x} (2.6 г)

6. Передача субъекту Sk субъектом Si права на доступ x к объекту Oj разрешается, если субъект Sk имеет доступ w к "отцу" Os(j) объекта Oj, то есть если

{Sk,Os(j),w}  b, (2.6 д)

и отвергается - в противном случае. При этом происходит изменение состояния системы:

M'ij = Mij  {x}, x  G (2.6 е)

7. Лишение субъекта Sk субъектом Si права на доступ x к объекту Oj разрешается, если субъект Sk имеет доступ w к "отцу" Os(j) объекта Oj, то есть если

{Sk,Os(j),w}  b, (2.6 ж)

и отвергается - в противном случае. При этом происходит изменение состояния системы:

M'ij = Mij  {x}, x  G (2.6 з)

8. Создание субъектом Si объекта Ot(j) с уровнем защиты I, являющегося "сыном" объекта Oj, разрешается, если список текущего доступа b содержит записи:

{Si,Oj,w} ^ {Si,Oj,a} (2.6 и)

и отвергается - в противном случае. При этом происходит изменение состояния системы:

O' = O  {Ot(j)}; M' = M  Mt(j) (2.6 к)

где столбец Mt(j) содержит один ненулевой элемент Mit(j), значение которого зависит от дополнительного параметра, указываемого при запросе. Оно может принимать значения либо {r,а,w}, либо {r,а,w,е).

9. Создание субъектом Si объекта Ot(j) с уровнем защиты I, являющегося "сыном" объекта Oj, с сохранением согласованности разрешается, если список текущего доступа b содержит записи:

{Si,Oj,w} ^ {Si,Oj,a} ^ I > I(Oj) (2.6 л)

и отвергается - в противном случае. Изменение состояния системы происходит аналогично восьмому запросу.

10. Уничтожение субъектом Si объекта Oj (и всех объектов Oj1,Oj2,… Ojk, являющихся "последователями" по структуре дерева) разрешается, если субъект Si имеет доступ w к "отцу" Oi(j) объекта Oj, и отвергается - в противном случае. Изменение состояния системы происходит следующим образом: из списка текущего доступа b удаляются все записи, содержащие объекты Oj1,Oj2,… Ojk; из матрицы M удаляются столбцы с номерами j1,j2,… jk.

11. Изменение субъектом Si своего текущего уровня защиты It(Si) на It' разрешается, если выполняются условия:

а) Is(Si)  It' и

б) It'  I(Oj), если субъект Si имеет доступ а к какому-либо объекту Oj

в) It' = I(Oj), если субъект Si имеет доступ w к какому-либо объекту Oj

г) It'  I(Oj), если субъект Si имеет доступ r к какому-либо объекту Oj.

В противном случае запрос отвергается.

2.3. Программная реализация

В данном разделе описывается программный модуль, реализующий изложенные выше алгоритмы разграничения прав доступа.

2.3.1. Выбор средств программирования

Для написания программы была выбрана интегрированная система программирования Borland C++ Builder 3.0 и объектно‑ориентированный язык C++, так же использовался компилятор С++ 5.02 фирмы Borland. Эти средства позволяют создавать прикладные программы, предназначенные для работы на ПЭВМ IBM PC AT под управлением оболочки Windows 95 и более поздних версий, а так же операционной системы Windows NT и использующие общепринятые для Windows элементы пользовательского интерфейса, а также позволяющие с легкостью реализовывать работу с базами данных и создавать клиент/серверные приложения.

Предпочтение было отдано системе Borland C++ Builder благодаря широкому набору стандартных средств программирования, называемых компонентами, позволяющих экономить время на создание различных программных интерфейсов и реализации многих общих для широкого спектра программных продуктов функций. Кроме того визуальная среда проектирования, который обладает Borland C++ Builder, существенно ускоряющая и упрощающая разработку, является практически стандартом среди разработчиков ПО. Еще одним преимуществом выбранной системы является высокая (по сравнению со многими другими средствами программирования) эффективность генерируемого компилятором кода, что весьма существенно для данного ДП, т.к. в нем применяется метод, требующий большого количества вычислений.

2.3.2. Описание программного продукта

Программный модуль мандатного разграничения доступа имеет следующие функциональные возможности:

· контроль прав доступа субъектов системы на чтение (r) объекта;

· контроль прав доступа субъектов системы на запись (w) в объект;

· контроль прав доступа субъектов системы на модификацию (a) объекта;

· контроль прав доступа субъектов системы на исполнение (е) объекта;

· контроль прав доступа субъектов системы на отказ от доступа;

· контроль прав доступа субъектов системы на передачу доступа к другому объекту ;

· контроль прав доступа субъектов системы на лишение права доступа другого субъекта;

· контроль прав доступа субъектов системы на создание объекта без сохранения согласованности;

· контроль прав доступа субъектов системы на создание объекта с сохранением согласованности;

· контроль прав доступа субъектов системы на уничтожение объекта;

· контроль прав доступа субъектов системы на изменение своего текущего уровня защиты.

2.3.3. Разработка программной документации

В документацию к ПП на КЗ "Система документооборота Минторга РФ" должны входить тексты исходных модулей программы. Программная документация на КЗ "Система документооборота Минторга РФ" должна разрабатываться в соответствии с требованиями ГОСТ 19.301-76, ГОСТ 19.503-79 и ГОСТ 19.504-79.

2.3.4. Результаты опытной эксплуатации КЗ "Система документооборота Минторга РФ" и технические предложения по ее развитию

Опытная эксплуатация разработанного МО КЗ и ПП показала, что он соответствует требованиям ТЗ на данный комплекс и решает поставленную перед ним задачу. Программный модуль корректно справляется с контролем полномочий и соблюдением прав доступа на основе меток безопасности (мандатным принципом управления доступом). В рамках поставленной задачи заложенная функциональность реализована полностью.

Были проведены испытания, с целью выявить влияние созданного модуля на общее свойство доступности системы.

Испытания проводились в следующей конфигурации.

Сервер Compaq Proliant 800, процессор Intel Pentium II 450 МГц, RAM 256 Мб, жесткий диск 9,1 Гб Wide-Ultra SCSI 3, под управлением MS Windows NT Server 4.0 с установленной СД МТ.

Рабочая станция: процессор Intel Pentium 166MMX, RAM 64 Мб, жесткий диск Quantum Fireball TM 2,1 Гб, операционная системой MS Windows 95 OSR 2.

Сетевое оборудование 3Com.

По результатам испытания время отклика системы с использованием дискретного (обеспечиваемого Windows NT) разграничения доступа составило 0,51 секунды, с использованием модуля мандатного разграничения прав доступа – 0,63 секунды, что является более чем приемлемым результатом.

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

Проведенное исследование не претендует на абсолютную объективность. Кроме того согласно существующему законодательству разработанный программный модуль должен пройти сертификацию Гостехкомиссии Росси, однако, в рамках разрабатываемого ДП он полностью удовлетворяет требованиям заказчика.

Выявлены следующие недостатки разработки (большинство из которых предполагалось заранее):

необходимо более углубленное тестирование модуля на предмет обнаружения возможных ошибок, могущих повлечь за собой возникновения несанкционированного доступа к СД МТ и нарушения прав доступа, это, в основном, следует из необходимости сертификации данного СЗИ;

для адаптации к универсальному использованию данного модулю (не только в рамках СД МТ) необходима некоторая доработка программ и алгоритмов, однако, этот недостаток не является критичным, так как небольшая переработка модуля для каждый конкретной задачи обеспечения защиты от НСД, не только не ослабит разрабатываемый КСЗ, но наоборот позволит проводить более согласованную политику безопасности и гарантировать надежную защиту.

Подведем итоги. В данной главе решены следующие задачи:

1. Выполнена постановка задачи на разработку КЗ "Решение задач информационной безопасности". В рамках разрабатываемой тематики было принято решение о создание СПО, реализующего мандатный принцип управления доступом к системе документооборота Минторга РФ.

2. Рассмотрены общие вопросы информационной безопасности автоматизированных систем и методы их решения.

3. Разработано математическое и программное обеспечение КЗ "Решение задач информационной безопасности", создан модуль мандатного управления доступом к СД МТ. Программная документация содержит 1037 строк исходного кода C++.

4. Разработанный математический аппарат признан пригодным для автоматизации проводимых в министерстве работ по повышению эффективности функционирования данной организации.

В перспективе возможно применение разработанных методов и построенных моделей в других учреждениях Российской Федерации.