автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Спецификация и синтез программного обеспечения защищенных информационных систем на основе расширенных концептуальных моделей

кандидата технических наук
Фомин, Александр Владимирович
город
Санкт-Петербург
год
2003
специальность ВАК РФ
05.13.11
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Спецификация и синтез программного обеспечения защищенных информационных систем на основе расширенных концептуальных моделей»

Автореферат диссертации по теме "Спецификация и синтез программного обеспечения защищенных информационных систем на основе расширенных концептуальных моделей"

На правах рукописи

Фомин Александр Владимирович

Спецификация и синтез программного обеспечения защищенных информационных систем на основе расширенных концептуальных моделей

Специальность 05.13.11 -Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Автореферат диссертации ка соискание ученой степени кандидата технических наук

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

Работа выполнена на кафедре компьютерной математики и программирования государственного образовательного учреждения высшего профессионального образования «Санкт-Петербургский государственный университет аэрокосмического приборостроения» (ГУАП).

Научный руководитель:

канд. техн. наук, доцент Бржезовский Александр Викторович.

Официальные оппоненты:

д-р техн. наук, профессор Перовская Е.И.

канд. техн. наук, доцент Капиванов А.Ж.

Ведущая организация:

Санкт-Петербургский институт информатики и автоматизации РАН (СПИИРАН)

Защита состойся «//» кС.юр А 2003 года в 15 часов на заседании диссертационного совета Д 212.233.02 при государственном образовательном учреждении высшего профессионального образования «Санкт-Петербургский государственный университет аэрокосмического приборостроения», по адресу: 190000, Санкт-Петербург, ул. Большая Морская, д. 67. —

С диссертацией можно ознакомиться в библиотеке ГУАП. Автореферат разослан «_»_2003 года.

Ученый секретарь совета,

докт. техн. наук, профессор

| ¿О

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

В настоящее время используются различные средства разграничения доступа, как программные, так и аппаратные. Но зачастую, они являются дополнением к уже существующим системам, которые разрабатывались без учета требований зашиты информации. Такие «внешние» по отношению к информационной системе средства защиты практически всегда можно преодолеть и получить доступ к конфиденциальной информации. Поэтому их использование не является эффективным решением.

Более перспективным является подход, который позволяет наделить свойствами безопасности сами информационные системы Для этого их необходимо разрабатывать с учетом соответствующих требований

К сожалению, подавляющее большинство CASE-средств (Computer Aided Software Engineering) не уделяет должного внимания вопросу защиты информации при проектировании программного обеспечения (ПО) и баз данных (БД) информационных систем, предоставляя разработчику самому реализовывать механизмы защиты и управления доступом. Такая ситуация приводит к непроизводительным затратам времени на разработку, является потенциальным источником ошибок, приводящих к несанкционированному доступу.

В связи с этим весьма актуальной является задача создания моделей и методов, поддерживающих различные этапы разработки ПО информационных систем, в которых необходимо организовать разграничение доступа к обрабатываемой информации Средства автоматизированной разработки ПО защищенных информационных систем, основанные на данных моделях, позволят увеличить скорость создания такого рода систем за счет автоматической генерации спецификаций текстов программ; позволят выявлять и предотвращать некоторые виды ошибок, связанные с проектированием, нарушающим положения полигики доступа; в целом повысят производительность труда проектировщика ПО и качество создаваемого программно! о продукта.

Целью работы является создание моделей для проектирования программного обеспечения и баз данных информационных систем, позволяющих учитывать особенности, связанные с разграничением доступа пользователей к обрабатываемой информации, разработка на основе данных моделей способов проектирования и методик синтеза спецификаций текстов программ

Основные задачи работы формулируются следующим обр НАЦИОНАЛЬНАЯ

БИБЛИОТЕКА С.Петер! ОЭ 100,

1) разработка концетуальных моделей для проектирования БД, позволяющих учитывать особенности, связанные с разграничением доступа к данным в БД;

2) разработка способов трансляции полученных моделей в инструкции на языке SQL (structured query language);

3) разработка концептуальных моделей для проектирования программного обеспечения, в котором необходимо обеспечить разграничение доступа к данным;

4) разработка способов трансляции полученных моделей в программные спецификации;

5) разработка прототипа инструментального средства для создания программного обеспечения защищенных информационных систем.

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

Основные положения, выносимые на защиту

1) расширения реляционной модели данных для осуществления мандатного доступа к данным в базах данных, позволяющие организовать ссылочную целостность при наличии явления многозначной реализации;

2) расширения диаграммы «сущность-связь», которые позволяют на концептуальном уровне моделировать структуру базы данных, поддерживающей многоуровневую модель данных (БД с мандатным доступом), процедура преобразования расширенной модели «сущность-связь» в инструкции на языке SQL для генерации базы данных с поддержкой многоуровневой модели данных;

3) расширения диаграмм потоков данных (ДПД), которые позволяют моделировать процессы защищенной информационной системы с учетом мандатной политики доступа Многоуровневая объектно-ориентированная модель и многоуровневая модель компонентного ПО (КПО), с помощью которых может бьггь специфицировано объектно-ориентированное и компонентное ПО с учетом мандатного доступа к данным;

4) способы трансляции многоуровневой объектно-ориептировапной модели и многоуровневых компонентных моделей в программные спецификации на языке описания XMI.

Научная новизна. Новизна предлагаемых моделей и способов проектирования заключается в следующем:

1) предлагаемые расширения реляционной модели в отличие от существующих, позволяют при многозначной реализации «исходного» первичного ключа (ключа, определенного проектировщиком при создании БД) обеспечить ссылочную целостности в многоуровневых БД «стандартным» образом - на основании этого «исходного» первичного ключа Это дает воз-

можность организовывать многоуровневую БД с помощью широко распространенных систем управления БД (СУБД), поддерживающих стандартную реляционную модель.

2) разработанные расширения диаграммы «сущность-связь» и алгоритм синтеза инструкций на языке SQL по расширенной диаграмме «сущность-связь» позволяют создавать концептуальную модель многоуровневой базы данных и генерировать базы данных с поддержкой многоуровневой модели доступа к данным.

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

4) Разработанные способы преобразования многоуровневой объектно-ориентированной и многоуровневых компонентных моделей в программные спецификации позволяют создавать инвариантные по отношению к языку программирования спецификации программ на языке описания XMI, которые могут использоваться в любых CASE средствах, поддерживающих технологию ХМ1.

Практическая значимость работы. Предложенные в диссертационной работе модели и способы проектирования реализованы в прототипе инструментального средства автоматизированной разработки защищенного КПО. Данный прототип позволяет: моделировать интерфейсы и компоненты системы, с возможностью указания особенностей, связанных с организацией мандатного доступа, анализировать модели на удовлетворение требованиям мнош-уровневой компонентой модели; генерировать программные спецификации для компонентов Применение данного прототипа позволяет увеличить скорость разработки ПО и БД защищенных информационных систем за счет автоматической генерации спецификаций текстов программ; повысить качество программного продукта за счет выявления некоторых видов ошибок, связанных с проектированием, нарушающим положения политики доступа; повысить производительность труда проектировщика за счет исключения повторного проек-

тирования и разработки элементов, связанных с организацией доступа к данным.

Реализация и внедрение результатов Основные теоретические положения и практические результаты работы были использованы при разработке информационной системы автоматизации военных лечебных и медицинских учреждений министерства обороны Российской Федерации, осуществляемой в ЗАО "Эврика", при выполнении работ по гранту 2002 года для студентов, аспирантов, молодых ученых и специалистов по теме «Концептуальное моделирование безопасности компонентного программного обеспечения» (номер гранта: М01-3.11К-296), при выполнении работ по гранту РФФИ «Разработка метамоделей, методов, инструментальных средств и технологии конвертации проектов информационных систем, созданных в соответствии с различивши методологиями в различных CASE-системах» (per. номер 00-07-90344), а также в учебном процессе в государственном образовательном учреждении высшего профессионального образования «Санкт-Петербургский государственный университет аэрокосмического приборостроения»

Апробация работы Основные положения и результаты диссертационной работы докладывались и обсуждались на следующих конференциях и семинарах:

1) Третья научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2000 г.

2) Четвертая научная сессия аспирантов и соискателей ГУАП, посвященная Всемирному дню космонавтики и 60-летию ГУАП, СПб, 2001;

3) Шестая Санкт-Петербургская ассамблея молодых ученых и специалистов Политехнический симпозиум «Молодые ученые промышленности Северо-западного региона», СПбГТУ, 2001.

4) Пятая научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2002 г.

5) Шестая научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2003 г.

6) Политехнический симпозиум «Молодые ученые промышленности Северо-западного ре-шона», СПбГТУ, 2003.

Публикации Основные результаты работы опубликованы в 10 печатных работах. Структура и объем работы Диссертация состоит из введения, четырех разделов, заключения, библиографического списка (94 наименования) и двух приложений, имеет общий объем 195 машинописных страниц, содержит 14 таблиц и 23 рисунка

СОДЕРЖАНИЕ РАБОТЫ Во введении представлена и обосновала актуальность темы диссертации, сформулированы цели и задачи работы, изложены научные и практические результаты, выносимые на защиту.

Первая глава посвящена описанию принципов создания и выработке подходов к про-

вотированию ПО защищенных информационных систем. Обосновывается тот факт, что проектирование защищенного ПО должно ориентироваться на формальные модели доступа. Далее проводится анализ формальных моделей доступа (дискреционных, мандатных, ролевых). Анализ показал, что только для мандатной модели есть строгое математическое доказательство того, что система, находясь изначально в безопасном состоянии, не перейдет в небезопасное состояние, при соблюдении ряда условий. Поэтому целесообразно предложить такие модели проектирования, которые бы позволили описать систему с учетом мандатной модели доступа. Создание таких моделей возможно осуществить за счет расширения существующих методологий проектирования. Выбрана следующая совокупность диаграмм и методов проектирования: ДПД; диаграмма "сущность-связь"; объектно-ориентированный анализ и проектирование; компонентное моделирование

Далее в главе приводится формальное представление выбранных диаграмм и методов проектирования, разработанное с использованием теории множеств Ниже, в качестве примера, приведена формальная модель КПО Остальные модели сделаны по аналогии.

Для целей данной работы математическая модель KIIO может быть представлена тройкой: CS - (С, I, CSAss), где С - множество программных компонентов КПО, I - множество интерфейсов; CSAss - множество связей. Множество программных компонентов является подмножеством декартова произведения следующего вида: С œ CNames х CTypes, где CNames сгNames - множество имен компонентов (Names - множество имен), С type.ч = {statefull, stateless} - множество типов компонентов. Тип statefull - обозначает программный компонент, имеющий состояние, т.е. сохраняющий свое внутреннее состояние от вызова к вызову методов; тип stateless - компонент, не имеющий состояния. Множество интерфейсов можно задать как следующий набор кортежей: I - {<inameJt Щ> // = 1,J }, где inamej е INames - имя j-го интерфейса {¡Names с Names - множество имен интерфейсов), INj = {п;„ /т = \М } - множество методов, определенных для j- го интерфейса; njm - m-й метод у-го интерфейса. IN, е N, где N - множество методов, определенных в КПО. Множество методов можно определить так: N = {<ппатеь NP¿> / к = 1,К }, где nname¡. е NNames - имя /с-го метода (NNames с:Names - множество имен методов); NPt = {pa /1 ~ XL } - множество параметров k-ro метода, рц - /-й параметр к-го метода NP¡¡ е Р, где Р - множество параметров. Множество параметров задается как подмножеиво следующего декартова произведения ' Р ç- РNames х PTypes х РModes, где PNames œ Names - множество имен параметров методов; РTypes - множество возможных типов параметров; PModes = {m, out, mout, return} -множество видов параметров методов: m - входной параметр, out - выходной, mout - вход-

пой/выходной, return - возвращаемое значение. Множество связей представим так: CSAsc = <1С, С1>, где /Сс/х В (С) - отношение интерфейс/компоненты, которые реализуют этот интерфейс; С/ с С х B(7J - отношение компонент/интерфейсы, реализуемые компонентом; В - булеан. Эти отношения можно представить в форме функциональных отображений, областями значений которых будет В (С) и В (I). Имеем, inlifs: С - >В(/); comp: I —> В(С) Получим: {ij/j-\J } = intrfo[c) - совокупность интерфейсов, реализуемых компонентом с; {cj/^ljS} = comp(i) - множество компонентов, реализующих интерфейс;.

Основным положением мандатной политики доступа является назначение всем участникам процесса обработки защищаемой информации специальной метки (например, секретно, совершенно секретно), получившей название уровня доступа Контроль доступа осуществляется в зависимости от уровней доступа взаимодействующих сторон на основании двух правил: уполномоченное лицо (субъект) имеет право читать только те документы, уровень доступа которых не превышает его собственный; субъект имеет право заносить информацию только в те документы, уровень доступа которых не ниже его собственного. Система при мандатном доступе представляется в виде множества субъектов S, объектов О, уровней доступа L, а также прав доступа read и write. На множестве уровней доступа определена формальная алгебра (L; < ®), где < - оператор доминирования, определяющий частичное нестрогое отношение порядка для элементов множества L; • - оператор, определяющий наименьшую верхнюю границу для пары элементов из L; ® - оператор, определяющий наибольшую нижнюю границу для пары элементов из L.

Во второй главе описываются модели для проектирования ПО защищенных информационных систем. Модели построены как расширения указанных выше диаграмм и методов проектирования.

Для реализации мандатного доступа в БД необходимо специальным образом расширить стандартную реляционную модель для организации так называемой многоуровневой модели данных. При этом все данные должны иметь метку, определяющую уровень доступа данных. Метки уровня доступа могут быть на разных уровнях детализации - от самих отношений до конкретных элементов данных в отдельном кортеже отношения (поэлементная классификация). Правила мандатной политики доступа требуют, чтобы пользователи с различными уровнями доступа видели разные срезы одного и того же отношения, отфильтрованные в соответствии с их полномочиями. При вставке и модификации записей в таблицы БД правила мандатного доступа также не должны нарушаться. Это приводит к явлению, называемому «polyinstantiation» («многозначность»), которое заключается в том, что для одного

и того же первичного ключа отношения должны существовать разные кортежи, если они относятся к разным уровням доступа. При этом нарушается принцип уникальности первичного ключа в отношении, что ведет к невозможности организовать ссылочную целостность В диссертации предлагаются такие расширения реляционной модели, которые бы позволили организовать ссылочную целостность, обеспечить корректную выборку данных с объединением таблиц и минимизировать потери от явления «ро1уш$1апйа1юп».

Определение 1. назовем исходной реляционной схемой многоуровневого отношения ЩАЬ С,, А2, С2,..., Ат, Ст, Аш+ь Сши,..., Ак, Ск, ТС) где А, - имя атрибута отношения; атрибуты А|, А2, ..., Ат входят в «исходный» первичный ключ отношения со схемой К. Под «исходным» первичным ключом понимается ключ, определенный проектировщиком БД; С, - метка уровня доступа атрибута А,; ТС - метка уровня

N

доступа кортежа; С,, ТС е I., где Ь - множество уровней доступа, ТС = • С,.

Определение 2 Пусть существуют многоуровневые отношения К1 и К2 Пусть в отношении К2 определен первичный ключ. Пусть в отношении существует определенный стандар1ным образом внешний ключ РК, ссылающийся на отношение К2. Маркированным внешним ключом отношения Я1, ссылающимся на отношение К2, называется пара. МРКя! дг - <РК, Срх >, где См„,, - метка уровня доступа внешнего ключа Ь'К.

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

Свойство 1: Разделение схемы отношения. Для организации ссылочной целостности в многоуровневой реляционной модели данных исходная схема отношения К должна быть разделена на две: Аь С[, А2, С2, .... Ат, Сга) и К"( Ат+1, Ст+1, ..., Ам, Си, МРКц-д-, ТС) Здесь МККЯ"д' - маркированный внешний ключ.

Таким образом, в отношении со схемой Я' мы получим только определенные проектировщиком атрибуты исходного первичного ключа и их метки уровня доступа, а в отношении со схемой Я" мы получим «информационное наполнение» и ссылку на соответствующий кортеж в отношении Я'. Использование в отношении К' в качестве первичного ключа совокупности всех атрибутов и их меток доступа позволит нам организовать ссылочную целостность, поскольку гарантируется уникальность такого ключа.

Далее приводится определение экземпляра отношения, вводятся свойства исходных первичных ключей, сущностной целостности, пи11 целостности, межэкземплярной целостности, целостности при множественности экземпляров первичного ключа (ро1уш&апйа1юп щ-1епп1у). Затем, в рамках предложенной модели разрабатываются алгоритмы операций «до-

бавление», «изменение» и «удаление». При этом используется нотация языка SQL.

Для описания многоуровневой БД при мифологическом моделировании необходимо расширить модель «сущность-связь» определениями того, на каком уровне детализации должен осуществляться контроль доступа В связи с этим исходная модель дополняется множеством признаков детализации при организации доступа к данным. Множество признаков детализации для сущности: DTAB = {table, tuple, element, unclassified). Множество признаков детализации для атрибутов: DCOL= {column, element, unclassified}. Здесь table - доступ к сущности целиком; tuple - к отдепьному кортежу, element - к элементу, unclassified - не

классифицирован. Затем вводятся функции, позволяющие определить уровень детализации

£

сущности и атрибута при организации контроля доступа к данным: dtM¡ :E[jm—>DTAB, где Еerd ' множество сущностей; : Аао —> DCOL, где А- множество атрибутов. Вводятся функции, задающие уровень доступа сущности и атрибута:

Е А '—

lERD : Eerd Lerw lERD : Aerd Lrw где ifXD = fo / » = V } - множество уровней доступа. В модели должны выполняться следующие правила.

1) Если указан уровень доступа для сущности (атрибута), то для неё (него) закрепляется уровень детализации «Table» («Column»):

Ve: е с Еш l^J(<?) Ф0 => d^J (е) = table- Va. a s Ашу lk¡J (a) =s> dhJt* (a) = column.

2) Для того, чтобы избежать неоднозначности в определении детализации при организации конгроля доступа к данным необходимо выполнение следующих ограничений'

VeVa: (е е Е^щ, dERD

'(e) * 0. a е еа^е)) => dERD (a) = 0;

VeVa: (a e eaERD(e), dFJW (a) ¿ 0) => dRRD (e) = 0.

Здесь eamJe) - функциональное отображение, задающее множество атрибутов, характеризующих сущность: еа^ Ееяв В(А^

3) Необходимо обеспечивать одинаковый уровень детализации для атрибутов одной

_ _ ^ ^

сущности; \f(i=\I) yJj(j=\,J ) (a е eaFJ¡n(e) лщ е eakkD{e))=> dFJt[) (а) = d^ (a).

Помимо формальных определений в главе 2 предложены графические представления для элементов расширенной диаграммы «сущность-связь».

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

рить модель потоков данных за счет маркировки элементов модели метками уровм доступа.

Определим функции, задающие уровни доступа процесса, элемента данных, терминатора, соохветственно: lDfJ: PDFD-> LDFD; l°FD LDfD; E^^ LDFD.

Введем следующие функции:

DFup

lDFD : DFdfd -> LDfd - функция из DFonj в Ldfd, задающая наименьшую верхнюю границу уровня доступа потока данных (в дальнейшем - верхняя граница потока);

DFJtiwrt

lDFD DFDFD - ФУНКЦИЯ из DFdfd в Ldfd, задающая наибольшую нижнюю

границу уровня доступа потока данных (в дальнейшем - нижняя граница потока);

Sup

lDFD : SDFD -» Ldfd - функция из SDFD в Ldfd, задающая наименьшую верхнюю границу уровня доступа хранилища данных (в дальнейшем - верхняя граница хранилища),

Sdown

lDFD : SDFD -> Ldfd - функция из SDFD в LDfd, задающая наибольшую нижнюю границу уровня доступа хранилища данных (в дальнейшем - нижняя граница хранилища);

dfDfD •DFdfd В(ОДЯ)) - функциональное отображение, задающее множество элементов данных для потока данных;

"dfd ' ^dfd ~ Функциональное отображение, задающее множество

входящих потоков для вершины.

Здесь Ldfd - множество уровней доступа модели, РГШ) - множество процессов, Р>№0 -множество элементов данных, EDFD - множество терминаторов, DFdfd -множество потоков данных, SDFD - множество накопителей, ADrD = PDFD и SDFD и Еот - множество вершин.

Верхняя граница потока dfeDFDFD определяется наименьшей верхней границей уровней доступа составляющих этот поток данных. Нижняя граница потока - это наибольшая нижняя граница уровней доступа элементов данных, составляющих поток. Имеем:

Срш=,*, С ц). =S С ц)> i^fL ш 1 »=1

I Утверждение 1. Если уровень доступа процесса p^PDFD доминирует над наименьшей

верхней границей верхних границ входящих в него потоков'

Р 1 DFup R

1DFD о») * • hm df, 6 aom <p)>

то модель потоков данных не противоречит мандатной политике доступа

Доказательство основывается на правилах мандатной политики доступа с использованием метода математической индукции. При этом под субъектом понимается процесс модели ДПД, а под объектом - поток данных.

Введем функции, описывающие входные и выходные данные вершины а е ЛОЯ):

(а) = и Кги ВД- ^ = 0!'Оа)= и ¿/ыъЩ-^Г

I

Здесь оси): Авю В(ЛГ£|Д)) - функциональное отображение, задающее множество

исходящих из вершины потоков.

Следствие 1. Из формулы для верхней границы потока и утверждения 1 следует, что

уровень доступа процесса должен доминировать над наименьшей верхней границей уровней

р ' о в

входящих в него данных от всех потоков: 1В№ (р) 2 • /ода Ц), е тцт(р), р б Рою

Если это пранило нарушается по логике предмешой области, описываемой ДПД, то входящие потоки, доминирующие над уровнем доступа процесса могут являться скрытыми каналами несанкционированной передачи данных.

Утверждение 2. Если над уровнем доступа процесса доминирует наибольшая нижняя граница нижних границ выходящих из него потоков:

!0ЮР(Р) * <§ СТ'Ш 6 <4> (Р)-Р 6 Роиу

то модель потоков данных не противоречит мандатной политике доступа.

Следствие 2. Из формул для нижней границы потока и утверждения 2 следует, что над уровнем доступа процесса должна доминировать наибольшая нижняя граница уровней дос-

Р ' И о

тупа выходящих из него данных: 10ю (р) 5 ® 1оп} Ц), Ы е ошрго (р),р е Ррю

Из методологии ДПД известно, что содержание хранилища лб5сн) (обозначим

определяется содержанием входящих потоков данных: 5твк„,(л) = твт(£) Таким образом, можно утверждать, что верхняя граница хранилища данных определяется наименьшей верхней границей составляющих это хранилище элементов данных. Нижняя граница определяется наибольшей нижней границей составляющих хранилище элементов данных. Имеем: (.?) = /^Ц), =® Си (<*,)•

Утверждение 3. При чтении процессом р, данных из хранилища £ необходимым условием удовлетворения мандатной политике доступа является доминирование уровня доступа

Р $с10"<П

процесса над нижней границей хранилища: (р) > 1от {¡).

Достаточным условием является доминирование уровня доступа процесса р над верхней границей хранилища- /™?(р) 5($)

Доказательство приводится отдельно для необходимого и достаточного условия и основывается на утверждениях 1 и следствии 1.

Далее приводятся утверждения (4-6), регламентирующие уровни доступа процессов относительно хранилища при записи процессом данных в хранилище, относительно друг Друга при существовании потоков от процесса к процессу и при декомпозиции процессов. Определяются правила моделирования, в случае, когда уровень доступа процессов невозможно указать из-за особенностей предметной области. При моделировании внешних сущностей в расширенной диаграмме потоков данных используются те же принципы, что и при моделировании взаимодействия процессов между собой и с хранилищами данных. При этом вводятся соответствующие утверждения (7-10). Разработаны графические представления для элементов расширенной ДПД.

Расширение методики объектно-ориентированного анализа и проектирования (ООП) для описания механизмов доступа основывается на фильтрации информационных потоков, возникающих между объектами - экземплярами классов. В работе описываются возможные потоки информации между экземплярами классов. Далее для ООП применяется субьектно-ориентированная модель, позволяющая детально выделить понятия субъекта и объекта в компьютерной системе (КС) В субъектпо-ориентированной модели потоком информации между объектом О) и объектом о, называется произвольная операция над объектом оу, реализуемая в субъекте 5 и зависящая от о,. Обозначается: Зп-еат^, о,) 4 О; При этом вводится понятие ассоциированных с субъектом объектов. Объект о в момент времени г ассоциирован с субъектом л, если состояние объекта о повлияло на состояние субъекта в следующий момент времени. Т.е субъект ¿- использует информацию, содержащуюся в объекте о. Объект о называется источником для субъекта если существует субъекту, в результате воздействия которого на объект о в КС возникает субъект хт. Обозначается: Сгеа1е(я1, о) 4 зт Для контроля за потоками вводится специальный субъект - содержательный монитор обращений (МО), который активируется при возникновении потока от ассоциированного объекта о, любого субъекта к любому объекту о, и обратно МО, который разрешает поток, принадлежащий только множеству легальных потоков, называют монитором безопасности объектов Определение 4. назовем многоуровневой схемой класса

СМ(Аи С/, Аз, Сг,..., Ам, См, М], См^и Мз, См*2.....Мц, См+лг, ОС)

где А, е А^р - имя атрибута, Аоор — множество атрибутов; С, / ¡=\М - метка уровня доступа для А,; М] е метод класса, М00р - множество методов; С1!} = М,И - метка уровня доступа метода Му, ОС - метка уровня доступа экземпляра класса; С„ ОС е I, где I - множе-

mu

ство уровней доступа ОС- • С*.

Множество классов будет состоять из схем классов. Экземпляром класса будет являться кортеж с е СМ. Для доступа к значению ;-го атрубта в кортеже с будем пользоваться записью c(AJ. Запись вида с(М) - будет определять субъект, соответствующий у-му методу класса в данном экземпляре класса. Введем отношение: Ase'' с; S х В(0) -субъект/ассоциированные объекты. Или: ase: S —> В(О), {oj / i=l,/} - asc(s, i) - множество объектов, ассоциированных с субъектом s в момент времени I. Введем функции, которые задают атрибутам и методам объекта метку уровня доступа из мпожества уровней доступа LM¡, Имеем: : Мтр lQOp; lmf : AQOp Lmf.

В табл. 1 показаны существующие в обьектно-ориентированном ПО потоки информации и правила фильтрации этих потоков (выражены утверждениями 11 и 12)

Потоки информации в объектно-ориентированном ПО и правила фильтрации

Таблица 1

Потоки Правила фильтрации

Прямой Stream(c¡(Mi). ^ c¡(Aj), ое<ис(с;(М,), 1)

Обратный: Stream(c,(M¡), c¡(Ai)) о, oeasc(o:(M,), i+I) ¡оогЛаМЩ^ЫА,))

Косвенный и транзитный Stream(c1(Ml)1 c¡(At)) 4 o¡, o¡e asc(c¡{MX /+1), Stream(c¡(Mt), o¡) 4 olt o,e asc(c¡(Mf), r+2), ote asc(ct(Aft), /+2), Stream(ci(.Mi). o,) * c¿A,), o,e огфДМ,), í+3) 'ooP^^'ooM^

Экземпляра класса: Create(s, SCM líe, Scu <= C^, csCM =>

^„^Шд) = '^(.Щ)) = <ФС) - c(C,) = /« / i = 1,M + N

Наследования:Ятаф, ¿см,- S(MJegclx№(SCU|),I*J '(¿си

В табл. 1 введены следующие обозначения: Соор - множество классов (схем классов); - схема отношения СМ\ ge00^,: Стг В(Сода) - функционально отображение, задающее множество унаследованных классов.

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

создания сначала рассматривается применение формальных моделей доступа в КПО. Затем доказываются следующие утверждения.

Утверждение 13. Для полномочий пользователя, определенных в ролевой политике доступа, имеется однозначное соответствие в дискреционной политике доступа.

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

Утверждение 14. Для фиксированных уровней доступа субъектов и объектов имеется соответствие между полномочиями субъекта s, на объект о,, определенными в мандатной политике доступа, и полномочиями субъекта J, на объект су в дискреционной политике.

Доказательство приводится для КПО В доказательстве для произвольного субъекта s, и его прав «read» и «write» на компонент cj показывается однозначное соответствие между полномочиями, определенными в мандатной политике доступа, и полномочиями, определяемыми дискреционной политикой.

Определение 5' Будем понимать под согласованностью полномочий политик доступа в компонентном программном обеспечении ситуацию, когда полномочия субъекта s,, определенные в соответствии с правилами одной политики доступа для некоторого объекта о, не противоречат правилам другой политики доступа.

Утверждение 15 Полномочия, определенные при применении мандатной политики доступа и полномочия, определенные при применении ролевой политики доступа являются согласованными в КПО, если их отображения на дискреционную политику доступа в соответствии с утверждениями 14 и 13 совпадают.

Доказательство основывается на утверждениях 13 и 14.

Расширения модели КПО для описания свойств, связанных с мандатным доступом, можно строить, ориентируясь на обобщенную формальную модель для КПО или на подходы, примененные при создании многоуровневой модели ООП. Мы получим две разные модели, поскольку они основаны на разных действиях при следовании правилам мандатной политики В первом случае мы ориентируемся на положения утверждения 15, и вынуждены выполнять требования о неизменности меток уровня доступа субъектов и объектов (статическая многоуровневая модель доступа КПО) Во втором случае мы должны принять концепцию наследования полномочий при вызове методов интерфейсов компонентов (динамическая многоуровневая модель доступа КГ10). Для описания многоуровневой статической модели КПО исходная модель должна быть дополнена следующими элементами: ITypes ={read write}~ множество стереотипов интерфейсов компонентов модели: read ин-

терфейс на чтение; write - интерфейс на запись; п / ¡Types - функция из 1 в ¡Types, задающая стереотип интерфейса, L - {с, / i-i,N} - множество уровней доступа, определенных в системе; cl: С -» L - функция из С в L, задающая уровень доступа компонента; CI - множество экземпляров компонентов; со : С -> В (С/) - функциональное отображение, задающее для компонентов множество экземпляров; /о: CI -» /- функция из CI в I, задающая интерфейс, который представляет экземпляр компонента; Ici: CI L- функция из Cl в L, задающая уровень доступа экземпляра компонента.

В модели должны действовать следующие ограничения:

1) Субъект Si не может получить ссылку на интерфейс г) компонента h (т.е не может создать экземпляр о* компонента ki с интерфейсом ;)), имеющего стереотип «read», если уровень доступа компонента к/ доминирует над уровнем доступа субъекта s,:

lc(k/) > l(sj, tt(ij)= «read», ij s mtrfs{ki) => Create(sly ki) 0.

2) Субъект s, не может получить ссылку на интерфейс компонента, имеющего стереотип «.write», если уровень доступа субъекта доминирует над уровнем компонента:

l(sj > cl(ki), U(ij)~ «write», ij e intrfs(ki) Create(i,, kt) ^ 0.

3) Субъект s, не может вызвать метод пр экземпляра ot компонента к\, определенный в интерфейсе ij компонента kt, имеющим стереотип «read», ссли уровень доступа компонента к/ строго больше уровня доступа субъекта:

c!(ki) > l(sj, ti(ij)- «read», ij e mtrfsfki), ot s co(ki), ij = io(ot) => Stream(s„ oi) 0.

4) Субъект s, не может вызвать метод экземпляра ot компонента £/, определенного в интерфейсе компонента ki, имеющим стереотип «write», если уровень доступа субъекта s, строго больше уровня доступа компонента кс

l(sj > сЩ, ti(ij)= «write», ij e mtrfsfii), o*e co(kj), ij = io(ot) => Stream(s„ o/J + 0.

В динамической многоуровневой модели КПО действует следующее правило: при создании субъектом s, экземпляра некоторого компонента этот компонент наследует полномочия субъекта и может выступать от имени это! о субъекта с вызовом к другим компонентам и с обращением к базе данных: Createis,, к!) ot, ot e co(ki) jl> lci(ok) = l(sj.

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

1) Субъект s/ не может вызвать метод экземпляра at компонента k, определенный в интерфейсе ц компонента ki, имеющим стереотип «read.», если уровень доступа экземпляра о* компонента к/ строго больше уровня доступа субъекта si.

lci(ok) > l(sj, ti(ij)= «read», ij e inlrfsfki), ij = io(oiJ, ot e co(ki) => Stream(s„ оь) 0

2) Субъект Si не может вызвать метод экземпляра at компонента к/, определенною в интерфейсе ij компонента ki, имеющим стереотип «.write», если уровень доступа субъекта s, строго больше уровня доступа экземпляра 04 компонента ki

l(s.) > lc(kt), tt(ij)= «write», ij с mtrfs(ki), ij = io(ot), о* e co(ki) Streamfsi, 00 0 Статическую многоуровневую модель КПО удобно применять для statefull компонентов, динамическую - для stateless компонентов

Третья глава посвящена описанию подхода к синтезу программных спецификаций и многоуровневой базы данных Определяются правила генерации базы данных с поддержкой многоуровневой модели доступа к данным по модели «сущность-связь». Далее приводтся алгоритм генерации инструкций на языке SQL для генерации базы данных с поддержкой многоуровневой модели данных. Этот алгоритм состоит из общего алгоритма и ряда частных алгоритмов' алгоритма генерации таблицы ключей для сущности г е генерации

таблицы данных для сущности е е Еыо, генерации внешних ключей для сущности ех на сущность е . В качестве примера ниже приведен в сокращении общий алгоритм В этом алгоритме. Ese„' - сущности, для которых произведен синтез таблиц; RgJ- множество обработанных связей модели; keyjahlefe, R) - алгоритм генерации таблицы ключей для сущности е и ее связей R с другими сущностями; keyшЫе(е. R) - алгоритм генерации таблицы данных; foremg keviß,, е-) алгоритмом генерации внешних ключей для сущности ех на сущность е. Шаг 1.1 - О, /;',.„,' = 0, R„J= 0, sql- <о>

Шат1.(УееЕ,Л[(ееЕ'лег'L(e)= {0})=>W-W v key table(e, {0}) + аЬ(а lablele, {0}),

ЬИГУ 6 ERD ~

' и «• = ' - "1]

Шаг 3. (VeeS^VreÄgJ[(ее V л reer^J («)) => R={r reerFJ (е)}, sql = sql + keyjable(e, R) f + data_table(e, R), Е^Г' = E^ и г, - RsJu R, i = i+1]

Шаг 4. (Vee Euu)(yr€RB!])[etEgJ => R - {r. reer^' («■)}, sql = sql + keyjabte(e, R) + dalajable{e, R), E„J*' - ESJ ue, Rs= R^ и R,, = ¡+1]

Шаг 5. (VreR^eye E^Ve.eE^MreR^' л (W^JV)" **)>) л («»J {*) л е, е £„„') л Л (re er^ (е) л е,еЯг„,')) => sql- sql+foremgJey(e, с,)] Шаг 6. RSJ-R^ алгоритм завершен

Для синтеза программных спецификаций из многоуровневой объектно-ориентированной и компонентной модели предлагается использовать стандарт XMI (XML Metadata Interchange). Этот стандарт определяет технологию XML в качестве основы для обмена метаданными между средствами моделирования и репозиториями метаданных. Данное свойство используется для генерации программных спецификаций по многоуровневой объектно-ориентированной модели, статической и динамической модели компонентов Приво-

дится алгоритм преобразования многоуровневой объектно-ориентированной модели в программную спецификацию на языке XMI. При этом показывается соответствие между элементами модели и тегами документа па языке XMI. Общий алгоритм состоит из ряда частных: алгоритма синтеза тега <Foundation Core.Class> документа XMI для класса с, е С00р\ синтеза тега <Foundation Core Attribute> документа XMI для атрибута a¡ е ca00f(c¡), синтеза тега <Foundation.Core.Operat¡ori> документа XMI для метода m¡ е ст(Юр(су, синтеза тега <Foundation.Core DataType> документа XMI для типа данных í* е Тоор\ синтеза тега <Foundation.Core Associatiorí> документа XMI для ассоциативной связи asc¡ е ASoop между классами; синтеза тега <Foundat\on Core.Generalization> документа XMI для отношения наследования между классами с, и сг.

В четвертой главе описан прототип средства автоматизированной разработки защищенного компонентною программного обеспечения. Описываются функциональные свойства прототипа, его структура, а также приводится пример практического использования при создании базового программно-технического комплекса средств автоматизации военных лечебных учреждений (БПТКСА ВЛУ). В заключении главы приведен анализ эффективности применения прототипа на основе результатов его внедрения в ЗАО «Эврика».

В заключении формулируются основные научные и практические результаты.

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

1) Разработаны расширения реляционной модели для осуществления мандатного доступа к данным в БД, позволяющие организовать ссылочную целостность при наличии явления многозначной реализации. Разработаны алгоритмы операций INSERT, UPDATE, DELTE, позволяющие манипулировать данными в предложенной модели.

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

3) Разработала многоуровневая объектно-ориентированная модель, расширяющая исходную модель описанием информационных потоков в объектно-ориентированном ПО и правилами фильтрации этих потоков при мандатном доступе к данным. С помощью этой модели может быть специфицировано объектно-ориентированное ПО с учетом мандатного доступа к данным. Дана графическая нотация предложенных расширений для диа-

грамм классов.

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

5) Разработаны расширения диаграммы «сущность-связь», которые позволяют создавать концептуальную модель многоуровневой базы данных. Разработан алгоритм сшпеза инструкций на языке SQL по модели «сущность-связь» для генерации многоуровневой БД

6) Разработаны способы трансляции многоуровневой обьектно-ориентированной модели и многоуровневых компонентных моделей в программные спецификации на языке описания XML

По теме диссертации опубликованы следующие работы'

1. Фомин A.B., Полубелов И.А. Система учета и анализа информационных ресурсов и технологий организаций связи // Сб докл. 2-й международной научно-технической конференции студентов, аспирантов и молодых специалистов стран СНГ «Техника и технология связи». СПб.: СПбГУТ, 2000. - С.310-312.

2. Фомин А.В , Полубелов И А. Отображение информационной структуры организации // Сб. тезисов докл международной научной конференции «XXVl-e Гагаринскис чтения». М.: МАТИ-РГГУ, 2000. - С.163.

3. Фомин A.B. Учет и анализ информационных ресурсов и технологий организации - шаг к интеграции // Материалы XXXVIII международной научной студенческой конференции "Студент и научно-технический прогресс". Информационные технологии. Новосибирск' Изд-во Новосибирского roc университета, 2000. - С 215.

4. Фомин А В , Полубелов И.А. Модели и методы учета и анализа информационных ресурсов и технологий организаций и территорий // Тез. докл. третьей научной сессии аспирантов и соискателей ГУАП, СПб : СПбГУАП, 2000. - С.166-169

5. Фомин A.B. Концептуальное моделирование безопасности компонентного программного обеспечения // Сб. докл. четвертой научной сессии аспирантов и соискателей ГУАП. в 2 ч. Ч I. Технические науки, СПб.: СПбГУАП, 2001. - С.320-321.

6. Фомин A.B. Компонентное программное обеспечение - вопросы безопасности // Сб. тезисов докл шестой Санкт-Петербургской ассамблеи молодых ученых и специалистов. Политехнический симпозиум «Молодые ученые промышленности Северо-западного резона», СПб.: СПбГТУ, 2001. - С.ЗО.

7. Фомин А В Концептуальное моделирование безопасности компонентного программного обеспечения // Шестая Санкт-Петербургская Ассамблея молодых ученых и специалистов Аннотации работ по грантам Санкт-Петербургского конкурса для студентов, аспирантов, молодых ученых и специалистов. СПб.: Изд-во С.-Петерб. ун-та, 2001. -С.80.

8. Фомин A.B. Формальные модели безопасности для компонентного программного обеспечения // Сб докл пятой научной сессии аспирантов и соискателей ГУАП: в 2 ч. Ч I.

Технические науки, СПб: СПбГУАП, 2002. - С 438-442.

9. Фомин A.B. Расширения реляционной модели и модели сущность-связь для обеспечения безопасности в базах данных // Сб. докл шестой научной сессии аспирантов и соискателей ГУАП, СПб.: ГУАП, 2003.

10. Фомин A.B. Расширения реляционной модели и модели сущность связь для обеспечения безопасности данных II Сб. тезисов докл. политехнического симпозиума «Молодые ученые промышленности Северо-западного региона», СПб.: СПбГТУ, 2003. - С.35.

11. Бржезовский A.B., Фомин A.B. Применение формальных моделей безопасности при концептуальном проектировании компонентного программного обеспечения // Известия ВУЗов - Приборостроение, 2003. (в печати)

12. Бржезовский А В., Фомин А В Использование формальных моделей безопасности в компонентном программном обеспечении // Вестник молодых ученых, 2003. (в печати)

13. Бржезовский A.B., Фомин A.B. Расширения реляционной модели для обеспечения безопасности в базах данных II Информационно-управляющие системы, 2003. №11. (в печати)

I

I

I

1

! ! I

I

I

Формат 60x84 1/Ж Бумага офсетная. 11ечать офсетная. Тираж 100 экз. Заказ № 30-3

Отдел оперативной полиграфии ГОУ ВПО «СПбГУАП» 190000, Санкт-Петербург, ул. Б. Морская, 67

I

I

léoff f 0 3 9

Оглавление автор диссертации — кандидата технических наук Фомин, Александр Владимирович

введение.

1. особенности разработки защищенных информационных систем.

1.1. Понятие защищенной информационной системы.

1.2. Формальные модели доступа.

1.3. Подходы к проектированию программного обеспечения защищенных информационных систем.

1.4. Диаграмма потоков данных.

1.5. Диаграмма «сущность-связь».

1.6. Объектно-ориентированный анализ и проектирование.

1.7. Компонентное программное обеспечение.

1.8. Выводы.

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

2.1. Способы проектирования баз данных защищенных информационных систем.

2.2. Модель потоков данных для описания процессов защищенных информационных систем.

2.3. Методика объектно-ориентированного проектирования программного обеспечения с учетом мандатной политики доступа.

2.4. Конструкции языка UML для описания компонентного программного обеспечения с учетом мандатной политики доступа.

2.5. Взаимосвязь между разработанными моделями.

2.6. Выводы.

3. трансляция концептуальных моделей программного обеспечения защищенных информационных систем в программные спецификации.

3.1. Генерация базы данных с поддержкой многоуровневой модели доступа к данным по модели «сущность-связь».

3.2. Преобразование многоуровневой объектно-ориентированной модели в программные спецификации.

3.3. Особенности разработки компонентного программного обеспечения.

3.4. Выводы.

4. архитектура и пример применения системы проектирования компонентного программного обеспечения защищенных информационных систем.

4.1. Описание функциональных свойств системы.

4.2. Пример применения системы проектирования КПО защищенных информационных систем.

4.3. Оценка сложности многоуровневой модели КПО.

4.4. Эффективность использования системы проектирования защищенного КПО.

4.5. Выводы.

Введение 2003 год, диссертация по информатике, вычислительной технике и управлению, Фомин, Александр Владимирович

Актуальность проблемы

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

В настоящее время используются различные средства разграничения доступа, как программные, так и аппаратные. Но зачастую, они являются дополнением к уже существующим системам, которые разрабатывались без учета требований защиты информации. Такие «внешние» по отношению к информационной системе средства защиты практически всегда можно преодолеть и получить доступ к конфиденциальной информации. Поэтому их использование не является эффективным решением.

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

К сожалению, подавляющее большинство CASE-средств (Computer Aided Software Engineering) не уделяет должного внимания вопросам защиты информации при проектировании программного обеспечения и баз данных информационных систем, предоставляя разработчику самому реализовывать механизмы защиты и управления доступом. Такая ситуация приводит к непроизводительным затратам времени на разработку, является потенциальным источником ошибок, приводящих к НСД.

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

Цель работы

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

Задачи работы

1) разработка концептуальных моделей, позволяющих при проектировании баз данных учитывать особенности, связанные с разграничением доступа к данным в БД;

2) разработка способов трансляции полученных моделей в инструкции на языке SQL (structured query language);

3) разработка концептуальных моделей для проектирования программного обеспечения, в котором необходимо обеспечить разграничение доступа к данным;

4) разработка способов трансляции полученных моделей в программные спецификации;

5) разработка прототипа инструментального средства для создания программного обеспечения защищенных информационных систем.

Используемые методы исследования Для решения поставленных в работе задач используются элементы тео-I рии множеств, дискретной математики, реляционная алгебра, а также методы i

Щ математическом логики.

Основные положения, выносимые на защиту

1) расширения реляционной модели данных для осуществления мандатного доступа к данным в базах данных, позволяющие организовать ссылочную целостность при наличии явления многозначной реализации;

2) расширения диаграммы «сущность-связь», которые позволяют на концепту; альном уровне моделировать структуру базы данных, поддерживающей многоуровневую модель данных (БД с мандатным доступом), процедура преобразования расширенной модели «сущность-связь» в инструкции на языке SQL для генерации базы данных с поддержкой многоуровневой моде-♦ ли данных;

3) расширения диаграмм потоков данных (ДПД), которые позволяют моделировать процессы защищенной информационной системы с учетом мандатной политики доступа. Многоуровневая объектно-ориентированная модель и многоуровневая модель компонентного ПО (КПО), с помощью которых может быть специфицировано объектно-ориентированное и компонентное ПО с учетом мандатного доступа к данным;

4) способы трансляции многоуровневой объектно-ориентированной модели и многоуровневых компонентных моделей в программные спецификации на языке описания XMI.

Научные результаты

1. Разработаны расширения реляционной модели для осуществления мандатного доступа к данным в базах данных, позволяющие организовать ссылочную целостность при наличии явления многозначной реализации. Расширения основаны на разделении исходной схемы отношения на две - ключевую и схему данных. В рамках этих расширений разработана операционная семантика таких операций как INSERT, UPDATE, DELETE, позволяющая манипулировать данными в предложенной модели.

2. Разработаны расширения диаграммы «сущность-связь», которые позволяют указывать уровень детализации (таблицы, атрибуты, поэлементная классификация) при организации мандатного доступа к данным и создавать концептуальную модель базы данных, поддерживающей многоуровневую модель данных. Разработан алгоритм синтеза инструкций на языке SQL по расширенной модели «сущность-связь» для генерации базы данных с поддержкой многоуровневой модели доступа к данным.

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

4. Разработаны подходы к синтезу программных спецификаций на языке описания XMI из многоуровневой объектно-ориентированной и многоуровневых компонентных моделей. Данные программные спецификации инвариантны по отношению к языку программирования и могут использоваться в любых CASE средствах, поддерживающих технологию XMI.

Научная новизна

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

Предлагаемые расширения реляционной модели в отличие от существующих, позволяют при многозначной реализации «исходного» первичного ключа (ключа, определенного проектировщиком при создании БД) обеспечить все аспекты ссылочной целостности в многоуровневых БД «стандартным» образом - на основании этого «исходного» первичного ключа. Это дает возможность организовывать многоуровневую БД с помощью широко распространенных систем управления БД (СУБД), поддерживающих стандартную реляционную модель.

Разработанные расширения диаграммы «сущность-связь» и алгоритм синтеза инструкций на языке SQL по расширенной диаграмме «сущность-связь» позволяют создавать концептуальную модель многоуровневой базы данных и генерировать базы данных с поддержкой многоуровневой модели доступа к данным.

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

Разработанные способы преобразования многоуровневой объектно-ориентированной и многоуровневых компонентных моделей в программные спецификации позволяют создавать инвариантные по отношению к языку программирования спецификации программ на языке описания XMI, которые могут использоваться в любых CASE средствах, поддерживающих технологию XMI.

Практическая значимость

Предложенные в диссертационной работе модели и способы проектирования реализованы в прототипе инструментального средства для автоматизированной разработки защищенного КПО. Данный прототип позволяет: моделировать интерфейсы и компоненты системы, с возможностью указания особенностей, связанных с организацией мандатного доступа; анализировать модели на удовлетворение требованиям многоуровневой компонентной модели; генерировать программные спецификации для компонентов модели. Применение данного прототипа дает возможность: увеличить скорость разработки защищенных информационных систем за счет автоматической генерации спецификаций текстов программ на 34%; повысить качество программного продукта за счет автоматического выявления некоторых видов ошибок, связанных с проектированием, нарушающим положения политики доступа на 48%; повысить производительность труда проектировщика за счет исключения повторного проектирования и разработки элементов, связанных с организацией доступа к данным.

Реализация и внедрение результатов Основные теоретические положения и практические результаты работы были использованы при разработке информационной системы автоматизации военных лечебных и медицинских учреждений министерства обороны Российской Федерации, осуществляемой в ЗАО "Эврика", при выполнении работ по гранту 2002 года для студентов, аспирантов, молодых ученых и специалистов по теме «Концептуальное моделирование безопасности компонентного программного обеспечения» (номер гранта: МО 1-3.11К-296), при выполнении работ по гранту РФФИ «Разработка метамоделей, методов, инструментальных средств и технологии конвертации проектов информационных систем, созданных в соответствии с различными методологиями в различных CASE-системах» (per. номер 00-07-90344), а также в учебном процессе в государственном образовательном учреждении высшего профессионального образования «Санкт-Петербургский государственный университет аэрокосмического приборостроения».

Апробация работы Основные положения и некоторые результаты диссертационной работы докладывались и обсуждались на следующих конференциях и семинарах:

1) Третья научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2000.

2) Четвертая научная сессия аспирантов и соискателей ГУАП, посвященная Всемирному дню космонавтики и 60-летию ГУАП, СПб, 2001;

3) Шестая Санкт-Петербургская ассамблея молодых ученых и специалистов. Политехнический симпозиум «Молодые ученые промышленности Северозападного региона», СПбГТУ, 2001.

4) Пятая научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2002.

5) Шестая научная сессия аспирантов и соискателей ГУАП, ГУАП, СПб, 2003.

6) Политехнический симпозиум «Молодые ученые промышленности Северозападного региона», СПбГТУ, 2003.

Публикации

Основные результаты работы опубликованы в 10 печатных работах.

Структура и объем работы Диссертация состоит из введения, четырех разделов, заключения, библиографического списка (94 наименования), имеет общий объем 195 машинописных страниц, содержит 14 таблиц и 23 рисунка.

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

4.5. Выводы

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

2. С помощью прототипа были разработаны модели компонентов для базового программно-технического комплекса средств автоматизации военных медицинских и лечебных учреждений. Были измерены временные показатели и показатели качества, полученные при неавтоматизированной разработке и с применением прототипа. Временные показатели улучшились на 34%, а показатели корректности на 48%.

3. Ряд положений данной работы нашел применение в архитектуре подсистемы безопасности БПТКСА ВЛУ. Это, в частности, концепция менеджера объектов, реализованная в виде сервиса менеджера задач; согласованная смешанная политика доступа (ролевая и мандатная, реализуемая для контроллеров задач с помощью статической многоуровневой модели доступа, а для сервисов -динамической), осуществляемая с использованием сервиса авторизации и менеджера задач.

ЗАКЛЮЧЕНИЕ

В диссертационной работе разработаны расширения математических моделей диаграммных языков (диаграмм потоков данных и диаграммы «сущность-связь») и методов проектирования (объектно-ориентированное проектирование, компонентное моделирование) для описания свойств разрабатываемых программных систем с точки зрения мандатного доступа к данным. В процессе выполнения исследований в рамках работы были получены следующие научные результаты:

1. Разработаны расширения реляционной модели для осуществления мандатного доступа к данным в базах данных, позволяющие организовать ссылочную целостность при наличии явления многозначной реализации. В рамках этих расширений разработана операционная семантика таких операций как INSERT, UPDATE, DELETE, позволяющая манипулировать данными в предложенной модели. В отличие от существующих моделей, предлагаемая модель позволяет при существовании явления многозначной реализации обеспечить ссылочную целостность в базах данных «стандартным» образом - на основании единственного уникального первичного ключа. Это имеет большую практическую ценность, поскольку дает возможность организовать многоуровневую базу данных с помощью широко распространенных систем управления базами данных (СУБД), поддерживающих стандартную реляционную модель.

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

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

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

5. Разработаны расширения диаграммы «сущность-связь», которые позволяют указывать детализацию при организации многоуровневого доступа к данным. Разработон алгоритм синтеза инструкций на языке SQL по модели «сущность-связь» для генерации базы данных с поддержкой многоуровневой модели данных.

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

Показана практическая применимость разработанных моделей на примере прототипа системы проектирования компонентного программного обеспечения защищенных информационных систем и подсистемы авторизации и разграничения полномочий БПТКСА ВЛУ. Внедрение прототипа произведено в ЗАО «Эврика» при разработке базового программно-технического комплекса средств автоматизации военных медицинских и лечебных учреждений.

Библиография Фомин, Александр Владимирович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Богданов Д.В., Путилов В.А., Фильчаков В.В. Стандартизация процессов обеспечения качества программного обеспечения. Апатиты: КФ ПетрГУ, 1997. - 161 с.

2. Богословская Н.В., Бржезовский А.В. Обобщенная модель для спецификации проектов информационных систем // Известия ВУЗов- Приборостроение -2001. №5. С.8-12.

3. Богословская Н.В., Бржезовский А.В. Обобщенная модель методов проектирования информационных систем // Вестник молодых ученых. -2001. №7. С.96-104.

4. Бржезовский А.В., Жаков В.И., Путилов В.А., Фильчаков В.В. Синтез моделей вычислительного эксперимента. — СПб.: Наука, 1992. — 231с., ил.

5. Бржезовский А.В., Фильчаков В.В. Концептуальный анализ вычислительных систем: Учеб. пособие, СПб.: ЛИАП, 1991. 78 с.

6. Бржезовский А.В., Фомин А.В. Использование формальных моделей безопасности в компонентном программном обеспечении // Вестник молодых ученых (в печати)

7. Бржезовский А.В., Фомин А.В. Применение формальных моделей безопасности при концептуальном проектировании компонентного программного обеспечения // Приборостроение (Изв. вузов). 2003. (в печати)

8. Бржезовский А.В., Фомин А.В. Расширения реляционной модели для обеспечения безопасности в базах данных // Информационно-управляющие системы (в печати)

9. Бураков В.В. Концептуальное моделирование согласованности и синтез программной документации: Диссертация канд. тех. наук: 05.13.11. СПб., 2002. - 209 е.: ил. - Библи-огр.: с. 172-179.

10. Буч Г., Объектно-ориентированное проектирование с примерами применения М.: «Конкорд», 1992.-430 с.

11. Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя: Пер. с англ. — М.: ДМК, 2000. 432 с.

12. Вебер Д. Технология Java в подлиннике: Пер. с англ. СПб.: BHV - Санкт-Петербург,2000,- 1104с., ил.

13. Витюк Н.Г. Комплексная автоматизация военной медицины // Компьютер-Информ.2001. №16. С.4-5.

14. Гейн К., Сарсон Т. Структурный системный анализ: Пер. с англ. — М.: «Эйтекс», 1992. — 234 е., ил.

15. Гостехкомиссия России. Руководящий документ. Автоматизированные системы. Защита от несанкционированного доступа к информации. Классификация автоматизированных систем и требования по защите информации. М., 1992.

16. Гостехкомиссия России. Руководящий документ. Защита от несанкционированного доступа к информации- Термины и определения. М., 1992.

17. Гостехкомиссия России. Руководящий документ. Концепция защиты средств вычислительной техники от несанкционированного доступа к информации. М., 1992.

18. Гостехкомиссия России. Руководящий документ. Средства вычислительной техники. Защита от несанкционированного доступа к информации. Показатели защищенности от несанкционированного доступа к информации. М., 1992.

19. Дейт К. Дж. Введение в системы баз данных, 7-е издание: Пер. с англ. М: Издательский дом «Вильяме», 2001. - 1072с., ил.

20. Жаков В.И., Путилов В.А., Фильчаков В.В., Янкелевич А.А. Объектно-ориентированная технология разработки программных систем: Учебное пособие., ПетрГУ, Апатиты, 1998. -92 с.

21. Жаков В.И., Фильчаков В.В. Синтез текстов программ из концептуальной модели предметной области // Интеллектуальные инструментальные средства вычислительного эксперимента: сборник научных трудов. Апатиты, 1997. С. 30-48.

22. Зегжда Д.П., Ивашко A.M. Основы безопасности информационных систем. М.: Горячая линия - Телеком, 2000. - 452 е., ил.

23. Калянов Г.Н. CASE. Структурный системный анализ (автоматизация и применение). М.: "Лори", 1996. -242 с.

24. Коллинз Д. Структурный анализ в разработке систем. М.: Финансы и статистика, 1986. -240 с.

25. Майерс Г. Надежность программного обеспечения. М.: Мир, 1980. - 360 с.

26. Матьяш В.А. Реверсивные методы структурной разработки программных систем на начальных этапах жизненного цикла: Диссертация канд. тех. наук: 05.13.11. СПб., 1999. -195с.: ил. - Библиогр.: с. 172-177.

27. Мейер Д. Теория реляционных баз данных: Пер. с англ. М: Мир, 1987. - 608с., ил.

28. Мендельсон Э. Введение в математическую логику / Пер. с англ. под ред. В.В. Донченко. -М.: «Наука», 1971. 320с., ил.

29. Мессарович М., Токахара Я. Общая теория систем: математические основы. М.: Мир, 1978.- 340 с.

30. Объектно-ориентированное визуальное моделирование / сб. статей под ред. проф. А.Н. Терехова. СПб.: Издательство С.-Петербургского университета, 1999. - 132 с.

31. Орфали Р., Харки Д., Эдварде Д. Основы CORBA / Пер. с англ. М.: Горячая линия - Телеком, 1999. -318 с.

32. Питц-Моултис Н., Кирк Ч. XML в подлиннике / Пер. с англ., СПб.: "BHV Санкт-Петербург", 2000 г - 736 с.

33. Путилов В.А., Фильчаков В.В., Фридман А.Я. CASE-технологии вычислительного эксперимента. Апатиты, 1994. -Т.1. - 250 е.; Т.2. - 170 с.

34. Саймон А. Безопасность баз данных// Системы управления базами данных. -1997. №1. -С. 78-95.

35. Сван Т. Освоение Borland С++ 4.5. Практический курс. К.: «Диалектика», 1996. - 544с., ил.

36. Слама Д., Гарбис Д., Рассел П. Корпоративные системы на основе CORBA: Пер. с нагл.: Уч. пос. М.: Издательский дом «Вильяме», 2000. - 368 е., ил.

37. Требования и спецификации в разработке программ/ Пер. с англ. под ред. В.Н. Агафонова. М.: Мир, 1984. - 260 с.

38. Фомин А.В. Концептуальное моделирование безопасности компонентного программного обеспечения // Сб. докл. четвертой научной сессии аспирантов и соискателей ГУАП: в 2 ч. 4.1. Технические науки, СПб.: СПбГУАП, 2001. С.320-321.

39. Фомин А.В. Методические подходы в обследовании объектов автоматизации // Компью-тер-Информ. 2001. №17. - С.4-5.

40. Фомин А.В. Расширения реляционной модели и модели сущность связь для обеспечения безопасности данных // Сб. тезисов докл. политехнического симпозиума «Молодые ученые промышленности Северо-западного региона», СПб.: СПбГТУ, 2003. С.35.

41. Фомин А.В. Расширения реляционной модели и модели сущность-связь для обеспечения безопасности в базах данных // Сб. докл. шестой научной сессии аспирантов и соискателей ГУАП, СПб.: ГУАП, 2003.

42. Фомин А.В. Формальные модели безопасности для компонентного программного обеспечения // Сб. докл. пятой научной сессии аспирантов и соискателей ГУАП: в 2 ч. 4.1. Технические науки, СПб.: СПбГУАП, 2002. С.438-442.

43. Фомин А.В., Полубелов И.А. Модели и методы учета и анализа информационных ресурсов и технологий организаций и территорий // Тез. докл. третьей научной сессии аспирантов и соискателей ГУАП, СПб.: СПбГУАП, 2000. С. 166-169.

44. Фомин А.В., Полубелов И.А. Отображение информационной структуры организации // Сб. тезисов докл. международной научной конференции «XXVI-е Гагаринские чтения». М.: МАТИ-РТТУ, 2000. С. 163.

45. Чен П.П.-Ш. Модель «Сущность-связь» шаг к единому представлению о данных II Системы управления базами данных №3. - 1995. - с. 137-158.

46. Щербаков А.Ю. Введение в теорию и практику компьютерной безопасности. -М.: издатель Молгачева С.В., 2001. 352 с.

47. Янкелевич А.А. Методы спецификации и синтеза интерфейса пользователя автоматизированных информационных систем: Диссертация канд. тех. наук: 05.13.11. СПб., 2002. - 174 е.: ил. - Библиогр.: с. 153-161.

48. A guide to undestanding audit in trusted systems. National Computer Security Center. NCSC-TG-001, 1987.

49. A guide to undestanding discretionary access control in trusted systems. National Computer Security Center. NCSC-TG-003 Version 1, 1987.

50. Adler Sh., Berglund A., Caruso J., Deach S., Grosso P., Gutentag E., Milowski A., Parnell S., Richman J., Zilles S. Extensible Stylesheet Language (XSL) Version 1.0. W3C Candidate Recommendation. 2000.

51. Bell D.E., LaPadula L.J. Secure Computer System: Unified Exposition and Multics Interpretation. MTR 2997 Rev.2, MITRE Corp., Bedford, Mass., 1976.

52. Bryce C. Lattice-Based enforcement of access control policies. Arbeitspapiere der GMD (Research Report), N 1020, 1996.

53. Canadian Trusted Computer Product Evaluation Creteria. Canadian System Security Center Communication Security Establishment. Goverment of Canada. Version 3.0e. 1993.

54. Cannady Alan. Structured software metods. Structured Analysis and Structured Design. -Imperial College of Science and Tecnology, 1992. P. 323.

55. Chen P. P-S. The Entity-Relationship Modell. — Toward a Unifed View of Data. ACM TODS 1:1, March, 1976.

56. Codd E.F. A relational model of data for large shared data banks // Communication of the ACM. 1970. - Vol. 13. N6. - P.377-387.

57. Codd E.F. Extending the Database Relational Model to Capture More Meaning // ACM Transactions on Database Systems. 1979. - Vol.4. №4. - P.397-434.

58. Conrad R., Scheffner D., Freytag J. C. XML Conceptual Modeling using UML // International Conference on Conceptual Modeling, the Entity Relationship Approach. 2000.

59. CORBA CORE Revision Version 2.3a // OMG Group. 1999.

60. Cox P., Song B. A Formal Model for Component-Based Software.// Dalhousie University. Halifax, 2001.

61. Denning, Lunt Т., Schell R. A Multilevel Relational Data Model. IEEE Symp. Security and Privacy, 1987. P.220-234.

62. Ellmer E., Pernul G., Kappel G. Object-Oriented Modeling of Security Semantics. Proceedings of the 11th Annual Computer Security Applications Conference (ACSAC'95), IEEE Computer Society Press, New Orleans (LA), 1995, pp. 52-61.

63. Extensive Markup Language (XML) Version 1.0, World Wide Web Consortium Recommendation 10 February 1998, http://www.w3c.org/TR/REC-xml

64. Federal Criteria for Information Technology Security. National Institute of Standards and Technology & National Security Agency. Version 1.0, 1992.

65. Freier A., Karlton P., Kocher P. The SSL Protocol. Version 3.0. Transport Layer Security Working Group. 1996, http://wp.netscape.com/eng/ssl3.

66. Guidance for applying the Department of Defense Trusted Computer System Evaluation Cri-taria in specific environment. CSC-STD-003-85, 1985.

67. Guide to understanding configuration management in trusted systems. National Computer Security Center. NCSC-TG-006-88, 1988.

68. Harrison M., Ruzzo W., Uhlman J. Monotonic protection system // Foundation of secure computation. New York: Academic Press, 1978. - P.337-365.

69. Harrison M., Ruzzo W., Uhlman J. Protection in operating systems // Communication of the ACM. 1976. - Vol. 19. N 8. - P.461-471.

70. Information technology security evaluation criteria. Harmonized criteria of France-Germany-Netherlands-United Kingdom. -Department of Trade and Industry, London, 1991.

71. Jacobson I. Object-Oriented Software Engineering. Addison Wesley, 1992.

72. Jajodia S., Kogan В., Sandhu R. A multilevel-secure object-oriented data model, in «Information Security: An Integrated Collection of Essays». M. Abrams et al., eds., IEEE Computer Society Press. 1995, pp. 596-616.

73. McLean J. Security models. Encyclopedia of software engineering. Wiley Press. 1994.

74. Nelson, Doug, Chip Paradise. Using Polyinstantiation to develop an MLS Application. Proc. IEEE 7th Annual Security Application Conf. 1991, PP12-22.

75. OMG Unified Modeling Language Specification Version 1.3 First Edition // OMG Group. -2000.

76. OMG XML Metadata Interchange (XMI) Specification. Version 1.0. 2000.

77. Password management guideline. US Department of Defense. CSC-STD-003-85, 1985.

78. Rumbauh J. et al. Object-Oriented Modeling and Design. Prentice Hall, Englewood Cliffs, NJ, 1991.

79. Sandhu, Ravi S., Sushil J. Eliminating Polyinstantiation Securely. // Computers and Security. Vol.11, 1992, pp.547-562.

80. Sandhu, Sushil J. Honest Databases That Can Keep Secrets. Proc. 14th NIST-NCSC Nat'l Computer Security Conf. Washington. 1991. PP.267-282.

81. Sushil J., Sandhu. Enforcing Primary Key Requirements in Multilevel Relations. Proc. 4th RADC Workshop on Multilevel Database Security, Little Compton, 1991.

82. The interpreted trusted computer system evaluation criteria requirements. National Computer Security Center. NCSC-TG-001-95, 1995.

83. Trusted Database Management System Interpretation. National Computer Security Center. NCSC-TG-021 Version 1, 1991.

84. Trusted Network Interpretation. National Computer Security Center. NCSC-TG-005 Version 1, 1987.

85. Wirfs-Brock R., Wilkerson В., Wiener L. Designing Object-Oriented Software. Prentice Hall, 1990.

86. XML Linking Language (XLink) Version 1.0 W3C Proposed Recommendation. 2000.

87. XML Path Language (XPath) Version 1.0. W3C Recommendation. // World Wide Web Consortium. 1999.

88. XSL Transformations (XSLT). Version 1.1. W3C Working Draft 12. it World Wide Web Consortium. 2000.