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

кандидата технических наук
Хоанг Ван Кует
город
Томск
год
2013
специальность ВАК РФ
05.13.19
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Система обеспечения безопасности работы семантических баз данных, основанных на технологиях Semantic Web»

Автореферат диссертации по теме "Система обеспечения безопасности работы семантических баз данных, основанных на технологиях Semantic Web"

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

Хоанг Ван Кует

СИСТЕМА ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ РАБОТЫ СЕМАНТИЧЕСКИХ БАЗ ДАННЫХ, ОСНОВАННЫХ НА ТЕХНОЛОГИЯХ SEMANTIC WEB

Специальность 05.13.19 - Методы и системы защиты информации, информационная безопасность

АВТОРЕФЕРАТ

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

6 ФЕВ 2014

005544714

Томск - 2013

005544714

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

Научный руководитель — доктор технических наук, профессор

Тузовский Анатолий Фёдорович

Официальные оппоненты: Файзуллин Рашит Тагирович, доктор технических наук, профессор, проректор по информатизации Омского государственного технического университета

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

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

Защита состоится «27» февраля 2014 г. в 15 час. 15 мин. на заседании диссертационного совета Д 212.268.03 при Томском государственном университете систем управления и радиоэлектроники (ТУСУР) по адресу: 634050, г. Томск, пр. Ленина, 40.

С диссертацией можно ознакомиться в библиотеке ТУСУРа по адресу: 634050, г. Томск, ул. Вершинина, 74.

Автореферат разослан «27» декабря 2013 г

Учёный секретарь диссертационного совета

// <<■

Р.В. Мещеряков

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

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

В настоящее время разработано много методов обеспечения информационной безопасности операционных систем и реляционных баз данных. Но данные методы не могут использоваться для обеспечения безопасности семантических БД. Это связано с тем, что для СБД характерна сильная иерархическая связанность между элементами, а кроме этого, в них имеется возможность получения новой информации на основе известных фактов путём использования логических правил. Для решения задач обеспечения безопасности СБД уже разработаны отдельные методы и алгоритмы, такие, как, например: контроль доступа пользователей на основе именованных RDF-графов, контроль доступа пользователей на уровне триплетов в RDF-хранилище. Этому посвящены работы таких зарубежных учёных, как: R. Kienast, С. Baumgartner L. Qin, V. Atluri, N. Yialelis, E. Lupu, M. Sloman, L. Wang, D. Wijesekera, S. Jajodia, Reddivari, P. L. Kagal, T. Finin, A. Joshi, T . Bhavani и др. Но разработанные методы и алгоритмы имеют ряд недостатков, которые не позволяют эффективно обеспечить комплексную безопасность СБД.

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

Задачи исследования. Для достижения поставленной цели в работе определены следующие задачи исследования: г

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

2) Разработка алгоритмов формирования согласованных уровней безопасности всех элементов онтологий, хранящихся в СБД.

3) Создание алгоритма определения уровней безопасности триплетов в семантических БД.

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

5) Разработка метода обнаружения нарушений безопасности результатов логических выводов.

6) Разработка алгоритма контроля полученных результатов при выполнении запросов к семантическим БД.

7) Создание архитектуры системы обеспечения безопасности семантических БД.

8) Реализация программного обеспечения поддержки безопасности работы с семантическими БД.

Объектом исследования является безопасность семантических БД при выполнении пользователями различных операций.

Предметом исследования являются методы и алгоритмы обеспечения безопасности работы с семантическими БД.

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

Соответствие диссертации паспорту специальности. Работа соответствует следующим пунктам паспорта специальности 05.13.19 «Методы и системы защиты информации, информационная безопасность»:

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

П. 13. Принципы и решения (технические, математические, организационные и др.) по созданию новых и совершенствованию существующих средств защиты информации и обеспечения информационной безопасности.

П. 15. Модели и методы управления информационной безопасностью.

Научная новизна работы.

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

2) Создан алгоритм определения покрытия безопасности семантических БД, отличающийся возможностью согласования и определения уровней безопасности МЭР-триплетов.

3) Предложен алгоритм определения покрытия безопасности результатов логических выводов семантических БД, отличающийся возможностью определить уровни безопасности всех результатов логических выводов, полученных путём использования логических правил.

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

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

Практическая значимость диссертационной работы заключается в создании архитектуры обеспечения безопасности семантических БД, позволяющей с допустимыми задержками обеспечить поддержку безопасности СБД при значительной нагрузке, и в возможности практического использования разработанных методов и алгоритмов для поддержки безопасности работы семантических БД в информационных системах организаций. Это подтверждено путём создания прототипов программного обеспечения, на которые были получены два свидетельства Роспатента: «СогИгЬЗО - программа контроля логических выводов в семантических базах данных» и «8ес\У8В - программа поддержки безопасности работы с семантическими базами знаний».

Предложенные в диссертационной работе методы и алгоритмы (и их программная реализация) прошли опытную эксплуатацию в компаниях «ВАУ1М1ЬК» (Вьетнам, г. Ханой) и ООО «Томский завод резиновой обуви» (Россия, г. Томск), что подтверждено соответствующими актами. Кроме этого, разработанные методы и алгоритмы используются в учебном процессе кафедры оптимизации систем управления Института кибернетики НИ ТПУ.

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

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

2) Разработанный алгоритм определения покрытия безопасности семантических БД обеспечивает эффективное управление доступом пользователей к каждому 1ШР-триилету метаданных.

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

4) Предложенный метод обнаружения нарушений результатов логических выводов позволяет надёжно контролировать результаты логических выводов в СБД.

5) Алгоритм контроля полученных результатов при выполнении запросов к семантическим БД гарантирует получение пользователями только тех результатов, которые соответствуют их уровням доступа.

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

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

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

1) VII и VIII Международная научно-практическая конференция «Электронные средства и системы управления» (Томск, 2011,2012);

2) V, VI и VII Всероссийские научно-практические конференции иностранных студентов, магистрантов и аспирантов, обучающихся в ТПУ «Коммуникация иностранных студентов, магистрантов и аспирантов, в учебно-профессиональной и научной сферах» (Томск, 2011,2012,2013);

3) IX Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных с международным участием «Молодёжь и современные информационные технологии» (Томск, 2012);

4) XVIII Международная научно-практическая конференция студентов и молодых учёных «Современные техника и технологии» (СТТ-2012);

5) X Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования» (Томск, 2013);

6) IV Всероссийская конференция с международным участием «ЗНАНИЯ -ОНТОЛОГИИ - ТЕОРИИ» (Новосибирск, 2013).

Публикации. Основные результаты диссертационного исследования изложены в 22 печатных работах, в том числе в 5 статьях из списка рецензируемых журналов, рекомендованных ВАК РФ.

Структура и объем диссертации. Диссертация содержит введение, 4 главы, заключение, список использованной литературы, содержащей 120 наименований. Общий объём диссертации составляет 180 страниц машинописного текста, включающих 57 рисунков, 15 таблиц и 7 приложений.

ОСНОВНОЕ СОДЕРЖАНИЕ ДИССЕРТАЦИИ

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

В первой главе рассмотрены общие понятия семантических технологий, СБД. Выявлены основные проблемы обеспечения безопасности СБД и приведён обзор существующих моделей и методов для их решения.

В настоящее время разработан достаточно полный набор средств описания и работы с семантикой информации, таких, как RDF - язык описания ресурсов, OWL - язык описания онтологий, SPARQL - язык запросов к семантическим данным, RIF и SWRL - язык описания логических правил. Хранение семантической информации может быть реализовано с помощью СБД.

Определение 1. Под семантической БД (DBS) понимается база данных, в которой содержатся онтологии (О), семантические метаданные (М) и множество логических правил (R). Она может быть описана как DBS= {О, М, R}.

В СБД онтологии, метаданные представляются в виде множеств RDF-триплетов, состоящих из набора троек t = [s, р, о], где 5 - субъект, р — предикат, о — объект, и хранящихся в RDF-хранилищах (RDF-stores).

Общая структура СБД показана на рисунке 1.

U SPARQL Ц OWL API

онтологические OWL модели метаданные {контекстные, контентные) правила

SPARQL Tf SPARQL jf

RDF- хранилище (триплеты)

Рисунок 1. Структура семантической базы данных

Семантические БД строятся на основе RDF-хранилищ, под которыми (RDF-stores, RDF-triple store) понимаются информационные подсистемы, предназначенные для хранения и предоставления доступа к RDF-данным (триплетам).

В настоящее время уже разработан ряд систем управления семантической БД, таких, как Sesame, Oracle 1 lg Release, Virtuoso Universal Server, и на основе семантических БД также активно создаются информационные системы, такие, как семантические информационные порталы и электронные библиотеки.

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

Для решения данных проблем разработан набор моделей и методов, таких, как модель AC4RDF, подсистема безопасности AllegroGraph, система RAP, и т.д. Но для обеспечения безопасности СБД эти существующие модели и методы имеют ряд недостатков, таких, как:

• отсутствие средств согласования уровней безопасности различных элементов и триплетов семантических БД;

• отсутствие возможности контроля совместного доступа к RDF-графу, элементам онтологий, всем RDF-триплетам и их компонентам;

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

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

Во второй главе рассматривается формальное описание онтологических моделей, логических выводов в семантических БД. Предлагается архитектура системы обеспечения безопасности работы с семантическими БД и делается постановка основных задач, которые требуется решить для разработки такой системы.

Определение 2. Под онтологической моделью (онтологией) О понимается знаковая система (С, Р, Е, F, L, АС), где С = {сь ..., ст} - конечное множество элементов, которые называются понятиями (классами); Р = {р\,..., р„} - множество элементов, которые называются свойствами (двуместных предикатов); Е -частичный порядок на множествах Си?, задающий отношения «подкласс» и «суперкласс»; F - функция, которая назначает каждому элементу множества Р множество элементов из С (с учётом их иерархии в Е); L = {Lc, LP, ас, ссР} -множество текстовых меток Lc, LP для понятий и отношений, которые определяют профессиональные термины, используемые в ресурсах библиотеки, и их соответствие: ас — элементы множества С, аР - элементы множества Р; АС — набор аксиом онтологии.

Определение 3. Семантические метаданные - это метаданные, описывающие контекст и/или контент объекта в информационной системе с помощью понятий предметной области, определённых на некотором языке описания онтологии.

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

Определение 4. Логическим правилом г,- £ R является выражение, обозначающееся как Vjci,-.., хт (b\ A...A bk) —* а, где k > 1 и Х\, ..., хт - это свободные переменные в Ь\ А...Л Ьк. Каждый bj представляет собой триплет, t = [s,p, о], где s, р, о — переменные, константы или OWL-аксиомы. Левая часть правила (Ь\ A...A bk) называется телом, а правая часть правила (а) - головой правила. При составлении таких правил необходимо, чтобы все переменные, включаемые в голову, содержались в составе тела правила.

Определение 5. Пусть Vjc,, ..., хт (Ь\ А...А —> а является логическим правилом г, 6 R. Тогда триплет rLi = [а, Д у] является результатом логических выводов при выполнении логического правила г, в семантической БД, если удовлетворяет следующим условиям:

1) существует функция отображения /, которая удовлетворяет следующим

условиям:

• /сохраняет все константы (Дconstant) = constant)',

• если/([лг1,_уь zi]) = [аи Д, л] h/([x,,J2, z2]) = [а2, Д>, у2], то а\ = а2\

2) V/(ft,) 6 М,(/=1, ...,*);

3) f(a) = rLi.

Например, для получения результатов логических выводов отношения «производитель» используется логическое правило:

(?х является исполнителем ?у) (?z является продуктом ?у) —> (?х является производителем ?z).

Множество логических правил R может быть разделено на два подмножества R = {Ri, R2}, где R] - множество онтологических логических правил, включённых в язык описания онтологий; R2 — множество пользовательских логиче-

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

Пользователи U, имеющие уровень доступа slv и права доступа Up, могут отправлять SPARQL-запросы q к семантической БД DBS для просмотра, получения, добавления или изменения их данных D и для выполнения логических правил R для получения выводов RL.

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

Предлагаемая архитектура системы, разделённая на 6 уровней, соответствующих различным этапам обработки запросов пользователей, показана на рисунке 2.

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

2. Уровень представления данных даёт ответы пользователям. Ответы могут быть оформлены с использованием различных форматов данных, например таких, как RDF/XML, Turtle или N3.

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

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

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

• модуль согласования уровней безопасности элементов онтологий и индивидов метаданных;

• модуль согласования уровней безопасности триплетов — осуществляет процесс расчёта уровней безопасности всех триплетов в СБД;

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

• модуль представления семантической БД в виде RDF-графов - определяет все RDF-графы в СБД;

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

6. Хранилище баз данных используется для хранения RDF-метаданных, онтологий предметных областей и логических правил.

Рисунок 2. Общая архитектура системы обеспечения безопасности работы с

семантическими БД

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

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

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

• всем элементам данных D в СБД задаются уровни безопасности slD, например: открытый (slD = 1), конфиденциальный (slD = 2), секретный (slD = 3), совершенно секретный (sip = 4);

• каждому пользователю U задаётся уровень доступа sly,

• пользователь имеет доступ к данным, если ему заданы права доступа к данным дискреционной политикой или slu> si о,

• пользователь U имеет права на изменение, удаление и добавление данных D, если ир = {изменение, удаление, добавление};

• пользователь U имеет права на просмотр данных D, если si и > slD или ему заданы права Up = {просмотр};

• пользователь U может выполнять логические правила г, если si и > slr;

• пользователь U может получить результаты логических выводов rL, если slu > slrL, где slri - уровень безопасности результатов логических выводов.

Пользователи могут выполнять разные операции над данными или получить результаты логических выводов, если их уровни доступа больше или равны уровням безопасности данных. С учётом этого необходимо определить уровни безопасности всех элементов СБД.

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

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

1) Уровень безопасности sicх класса сх должен быть больше или равен уровню безопасности его суперкласса slCsup, sic* — slcsup-

2) Если класс сх связывается с классом су, имеющим уровень безопасности siСу по отношению owl:sameAs или owl: equivalentClass, то slCx = MAX(slCx, slcy)',

3) Уровень безопасности slpx свойства px должен быть больше или равен уровню безопасности его суперсвойства slPsup, slPx > slPsup.

4) Если рх связывается с другими свойствами ру по отношению rdfs:subPropertyOf, owl:inverseOf, owl: equivalent Property или owhlnverse-FunctionalProperty, то slPx = MAX(slPx, slPy), где slPy - уровень безопасности свойства py.

5) Уровень безопасности л7л индивида ix (ix £ I, где I = {z'i, ... , 4} — множество индивидов класса су онтологии О) должен быть больше или равен уровню безопасности slCy класса су, которому он принадлежит, sllx > slcy.

Для выполнения созданных принципов согласования уровней безопасности были разработаны правила на языке SWRL:

• Определение уровней безопасности всех классов

(?сх ontology:Level ?slCx) А (?су ontology:Level ?slCy) Л (?ex rdfs:subClassOf ?cy) Л greaterThan(?slCy, ?slCx) —* drop(l) A (?cx ontology:Level ?slCy).

• Определение уровней безопасности всех свойств

(?рх ontology:Level ?slPx ) Л (?рх rdfs:subPropertyOf ?Ру) Л (?ру ontology:Level ?slPy) Л greaterThan(?slPy, ?slPx) —> drop(l) A (?px ontology:Level ?slPy).

• Определение уровней безопасности всех индивидов

(?ix ontology:Level ?slIx) A (?ix rdf:type ?cy) A (?cy ontology:Level ?slCy) A greater-Than(?slCy,?slIJ —»drop(l) A (?ix ontology:Level ?slCy).

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

Семантическая БД представляет собой множество триплетов, следовательно, для контроля доступа пользователей к триплетам необходимо определять множество уровней безопасности всех триплетов СБД (покрытие безопасности СБД).

Общий уровень безопасности si, всего триплета t = [5, р, о] определяется как максимальное значение уровней безопасности его компонентов:

si, = MAX {sls, slp, si,}, (1)

где sls — уровень безопасности субъекта, slp - предиката и sl„ - объекта. Пара безопасности sc триплета t обозначается как sc = {t, si,}.

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

Функция/обозначается какf.pt—*t, где t = [s,р, о] € M,pt = [5'6 (С | Г), р' £ Р, о' £ (С | 7)]. Если триплетpt имеет уровень безопасности slph то в результате отображения функции/триплету t задаётся уровень безопасности slpl.

Если вначале триплету t уже задан уровень безопасности sl'„, то согласованный уровень безопасности триплета t определяется следующим образом: sl,= MAX (slp„ sl'„). (2)

Тогда с помощью функций / множество пар безопасности SCF всех триплетов Тм Е М и их соответствующих уровней безопасности SLT определяется следующим образом:

SCF={TM, SLT} = {Тм, MAX (slpti, sl'ti)}. (3)

С помощью алгоритмов, разработанных на основе принципа согласования элементов онтологий, множество пар безопасности SCo всех триплетов онтологии О может быть определено следующим образом:

SCo = {То, SL0} = {Т0, (SLC\ SLP)}, (4)

где Т0 - множество всех триплетов онтологии О, a SLo - множество согласованных уровней безопасности триплетов онтологии.

Вначале триплетам метаданных М также задаются начальные уровни безопасности SLM= {si,j, ..., slm}. Множество пар безопасности триплетов метаданных определяется следующим образом:

SCM= {ТЛ,, SLm} = {Тм, {sltl_____*/,„}}■ (5)

Из формул (3) - (5) покрытие безопасности семантических БД SCDB может быть определено как

SCDB = SCFU SCM U SC0={Тм, {SLPT}} U {Тм, SLM}U {T0,SL0}. (6) В связи с тем, что в покрытии безопасности СБД каждый триплет имеет только один уровень безопасности, следует

SCDB= {То, SLo}U {Ти, {U,=1...„MAX(4,„, s!„)}}. (7)

Таким образом, уровни безопасности всех триплетов СБД могут быть согласованы и определены. С учётом этого, контроль доступа пользователей к элементам и триплетам СБД надёжно выполнен.

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

Пусть триплет rLx = [or, Д /] является логическим выводом при выполнении логического правила гх 6 R, rx = {Ь\ Л...Л Ьк) —> а. Тогда существует функция/ которая отображает каждый элемент Ьи ..., Ък в соответствующие триплеты /У], ..., рк в DBS. Логический вывод rLx, полученный при выполнении гх, является триплетом (1 = fia), имеющим уровень безопасности slLx, который может быть определён следующим образом:

slLx = МАХ (0rf, ,...,slk), si;), (8)

где sl\, ..., slk - уровни безопасности триплета juu ..., цк соответственно, slx' -уровень безопасности // =f(a). Если /.i е DBS, то slx' Ф 0, иначе slx' = 0.

На основе этого пара безопасности scLx логического вывода rLx, получаемого в результате выполнения логического правила г„ определяется следующим образом:

scLx = {rLx, MAX ({siи ..., Sit), slx')). (9)

Пусть множество R включает n логических правил. Тогда из формулы (9) множество уровней безопасности всех логических выводов (покрытие безопасности логических выводов) в семантических БД может быть определено следующим образом:

SCL = U£=1...„ scu = ^Ctni^, MAX (MAX{5/,у}, si,)). (10)

Для контроля раскрытых триплетов и элементов (на основе которых пользователи могут получать неразрешённые им результаты логических выводов) необходимо обнаружить нарушения логических выводов. Это может быть выполнено путём представления семантической БД в виде RDF-графов, таких, как:

> Исходный RDF-граф Q состоит из множества вершин V (множество субъектов и объектов) и множества рёбер G (множество предикатов), обозначается как Q= {V, G}, где V е С и I, G в Р. Каждая вершина графа Q соответствует

субъекту или объекту некоторого триплета СБД, а каждое ребро соответствует предикату данного триплета.

> Онтологическим графом $ является результат применения множества онтологических логических правил к графу (),()£ (У.

> Видимым графом Qs для пользователя и является часть графа (У, содержащая все триплеты, у которых уровни безопасности меньше или равны уровню доступа пользователя (т.е. пользователь имеет к ним доступ).

> Невидимым графом для пользователя V является часть графа (У, содержащая все триплеты, у которых уровни безопасности больше, чем уровень доступа пользователя slu (т.е. к ним пользователь не имеет права доступа).

> Логическим графом для пользователя {/ является результат применения множества пользовательских логических правил 1?2 к видимому графу ()„, и получено отношение (У £

> Несанкционированным 1ЮР-графом Q, является множество несанкционированных логических выводов, элементами которых являются триплеты, которые находятся одновременно в логическом и невидимом графах (Эз* и Qh. Qt определяется по формуле

Ql = Q¿nQh. (11)

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

На основе понятий КОБ-графов сформированы следующие отношения между ними:

QhnQs = ф,Qh = Q^\QswmQ[=QsUQh. (12)

Из формул (11), (12) в семантических БД для пользователя С/ могут быть определены следующие области ГШР-графов (рисунок 3):

Рисунок 3. Области КЛР-графов для пользователей в семантических БД

1) область начального графа (выделена границей-);

2) область видимого графа Qs (выделена границей----);

3) область онтологического графа (У (выделена границей---);

4) область логического графа (выделена границей..............):

5) область несанкционированного графа Q, (показана как )

С учётом этого для определения возможных нарушении логических выводов в СБД БВв и контроля раскрытых триплетов при выполнении всех логических правил создан алгоритм, состоящий из следующих шагов:

Алгоритм обнаружения нарушений логических выводов в СБД Начало алгоритма

Шаг 1: определение всех RDF-графов.

• представление семантических БД в виде RDF-графа Q;

• определение онтологического графа Q1 путём применение логических правил Ri = {гп,..., r¡„} на основе графа Q;

• определение видимого и невидимого Qs и Qh RDF-графов для пользователей из онтологического RDF-графа (?'.

определение логического графа Q¡ при использовании логических правил R2 = {г2\,..., г2т} на основе видимого графа Qs.

Шаг 2: обнаружение нарушений результатов логических выводов путём определения несанкционированного RDF-графа Q, - пересечение невидимого Qh и логического Q¿ RDF-графов.

Шаг 3: определение всех раскрытых вершин и связей. Необходимо изменить их уровни безопасности для того, чтобы данные несанкционированные результаты логических выводов не могли быть получены пользователями. Конец алгоритма___

Пользователь U, имеющий уровень доступа slv, для просмотра данных, может отправлять SPARQL-запросы q к элементам или триплетам СБД. Для обеспечения безопасности СБД необходимо контролировать результаты выполнения данных запросов.

В запросе q шаблон «WHERE» - это множество триплетов SP = {pt¡, ..., pt„), где pt¡ = [5, р, о]. Уровень доступа каждого запроса q может быть определён следующим образом:

slg = MAX (slplh ..., slpt„), (13)

где sipa - уровень безопасности триплета pt¡,pti £ SP. Из выражения (1) уровень безопасности триплета запроса SLq определяется как

slq = MAX (MAX (slsi, slp¡, sloi)), где i = 1, ..., п. (14)

Таким образом, пользователь U имеет право выполнения запроса q, если slu >slq.

В таблице показаны основные виды триплетов в шаблоне запроса и условия для выполнения запросов пользователей.

Запрос q к СБД может быть логическим или прямым. Под логическим запросом понимается запрос, у которого шаблон «WHERE» совпадает с телом каких-либо логических правил r¡ = (b¡ Л...Л bk) —> а, г, 6 R. В результате выполнения этого запроса к СБД пользователь может получить результаты логических выводов.

Под прямым запросом понимается запрос, у которого шаблон «WHERE» не совпадает с телом каких-либо логических правил r¡.

1) Если q является логическим запросом:

• Пользователь может выполнить запрос д, если > где л7„ - уровень доступа логического правила г,.

• В результате выполнения логического запроса q даётся множество логических выводов = {ги, ..., ги} и множество их соответствующих уровней безопасности БЬТ= {л7,ь ..., л7,„} может быть определено по формуле (10).

• С помощью вышеописанного алгоритма можно определить множество несанкционированных логических выводов С учётом этого пользователь получит только результат = \

Условия и виды запросов пользователей к семантическим БД

Триплет Описание Условие

[s,p, О] Все элементы триплета являются константами slut sls, slu> slp и slv> sl0

[s, ?х, о] Субъект и объект являются константами, а предикат является переменной slut si, slut sip

[s,p, ?Х] Субъект и предикат являются константами, а объект является переменной slut sls slut sip

[?х,р, о] Объект и предикат являются константами, а субъект является переменной slut slp slut sl0

[*, ?*, ?у] Объект и предикат являются переменными, а субъект является константой slut sls

Рх,р,Ъ] Субъект и объект являются переменными, а предикат является константой slut slp

[?*, 1у, о] Субъект и предикат являются переменными, а объект является константой slutslo

[?*, Ь, ?*1 Все элементы являются переменными. Выполняется

2) Если q является прямым запросом:

• В результате выполнения прямого запроса результат представляет собой множество триплетов Т= {t\,..., t„}.

• Выбираются уровни безопасности триплетов SLr= {s/,b ..., sl,„} для множества Т, полученные в результате выполнении формулы (7).

• Определяется множество Т\ = {/ь ..., tk}, состоящее из элементов, у которых si, < slu ИЛИ sie < sly.

• Пользователь будет получать только триплеты А = Т\.

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

• Если q не является частью тела логического правила г,: (b{ Л...Л bk) —> а, то пользователь получит ответ Tj = {t\,..., tk).

• Если q является частью тела ((Ь\ Л...Л bh) 6 (b\ Л...Л bk)) логического правила г,: (¿1 Л...Л bk) —> а. Тогда, если часть результатов Т\ 6 Тх является основным фактом и пользователь может использовать Т\ и результат выполнения другого прямого запроса q' = (А, Л...Л bk) \ (¿i Л...Л bh) для получения несанкционированных результатов логических выводов а', то в этом случае пользова-

телю запрещается видеть Т\. С учётом этого он получит только ответы А = 7\ \ Т\.

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

Программа SecWSD разработана для обеспечения безопасности работы с семантическими базами знаний, включающими онтологии (OWL) и экземпляры (RDF-данные). Она может быть использована в информационных системах организаций и обеспечивает выполнение следующих функций: проверку учётной записи пользователей; чтение/запись семантических метаданных в следующих форматах: RDF/XML, RDF/N3, RDF/Turtle, RDF/N-Triples; задание уровней доступа пользователей и уровней безопасности триплетов онтологий и метаданных в СБД; проверку соответствия уровней доступа пользователей к элементам онтологий; выполнение SPARQL-запросов с учётом прав доступа пользователей.

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

С помощью разработанных программ приведены эксперименты исследования эффективности созданных методов и алгоритмов.

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

1. Использование разработанных методов и алгоритмов значительно сокращает требуемые объёмы оперативной памяти для хранения метаданных с метками безопасности.

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

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

4. Время выполнения алгоритма определения уровней безопасности результатов логических выводов существенно зависит от количества понятий онтологий и незначительно зависит от количества триплетов в семантических БД.

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

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

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

В ходе диссертационного исследования получены следующие основные результаты:

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

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

3) Метод обнаружения нарушений логических выводов в семантических БД, выявляющий все возможные нарушения безопасности логических выводов.

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

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

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

7) Разработано программное обеспечение для контроля доступа пользователей к семантическим БД «SecWSD» и логических выводов в семантических БД «ContrLSD». Разработанные программные зарегистрированы в Роспатенте.

8) Выполнено практическое внедрение основных результатов работы: в компании «BAVIMILK» (Вьетнам) в 2013 г. и ООО «Томский завод резиновой обуви» (Россия) в 2013 г., а также в учебном процессе кафедры оптимизации систем управления Института кибернетики Томского политехнического университета. Результаты опытной эксплуатации созданных подсистем подтвердили высокий уровень качества обеспечения безопасности семантических БД.

СПИСОК ОСНОВНЫХ ПУБЛИКАЦИЙ

В журналах, рекомендованных ВАК РФ для публикации результатов диссертационных исследований:

1. Хоанг Ван Кует. Контроль логических выводов в семантических базах данных / В. К. Хоанг, А. Ф. Тузовский // Известия Томского политехнического университета. - 2012. - Т. 321, № 5. - С. 158-162.

2. Хоанг Ван Кует. Решения основных задач в разработке программы поддержки безопасности работы с семантическими базами данных / В. К. Хоанг, А. Ф. Тузовский // Доклады Томского государственного университета систем управления и радиоэлектроники. - 2013. - Т. 28, № 2. - С. 121-125.

3. Хоанг Ван Кует. Метод контроля прямого доступа к семантическим базам данных / В. К. Хоанг, А. Ф. Тузовский // Известия Томского политехнического университета. - 2013. - Т. 322, № 5. - С. 138-142.

4. Хоанг Ван Кует. Методы определения уровней безопасности элементов онтологии / В. К. Хоанг, А. Ф. Тузовский // Известия Томского политехнического университета. - 2012. - Т. 322, № 5. - С. 148-152.

5. Хоанг Ван Кует. Метод контроля логических выводов в семантических базах данных // Научно-технический вестник Поволжья. - 2013. № 1. - С. 281— 286.

В сборниках трудов и тезисов конференций:

6. Хоанг Ван Кует. Основные задачи организации безопасности для семантических веб / В. К. Хоанг, А. Ф. Тузовский // VII Международная научно-практическая конференция «Электронные средства и системы управления». -Томск, 2011.-С. 197-200.

7. Хоанг Ван Кует. Алгоритмы для контроля доступа и модификации семантических данных / В. К. Хоанг, А. Ф. Тузовский // VIII Международная научно-практическая конференция «Электронные средства и системы управления». - Томск, 2012. - С. 41-45.

8. Хоанг Ван Кует. Алгоритм для многоуровневой безопасности семантических данных / В. К. Хоанг, А. Ф. Тузовский // XVIII Международная научно-практическая конференция «Современные техника и технологии». -Томск, 2012. - С. 425-426.

9. Хоанг Ван Кует. Разработка модели и методов обеспечения безопасности семантических баз данных / В.К. Хоанг, А.Ф. Тузовский // Всероссийская конференция с международным участием «Знания - Онтологии - Теории» (ЗОНТ 2013). - Новосибирск, 2013. - С. 182-193.

10. Хоанг Ван Кует. Методы управления выполнением SPARQL запросов к семантическим данным / В. К. Хоанг, А. Ф. Тузовский // X Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования». -Томск, 2013.-С. 125-127.

11. Хоанг Ван Кует. Выбор языка запросов к семантическим данным / В.К. Хоанг, А. Ф. Тузовский // X Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования». - Томск, 2013. - С. 117-119.

12. Хоанг Ван Кует. Алгоритмы контроля прав на модификацию семантических данных / В. К. Хоанг, А. Ф. Тузовский // X Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных с

международным участием «Молодёжь и современные информационные технологии». - Томск, 2012. - С. 19-20.

13. Хоанг Ван Кует. Алгоритм для определения уровня политики безопасности rdf-данных / В. К. Хоанг, А. Ф. Тузовский // X Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных с международным участием «Молодёжь и современные информационные технологии». - Томск, 2012. - С. 17-18.

14. Хоанг Ван Кует. Обеспечение безопасности семантических баз данных / В. К. Хоанг, А. Ф. Тузовский // Вестник науки Сибири. - Томск, 2012. № 5 (6). -С. 131-139.

15. Хоанг Ван Кует. Алгоритм для многоуровневой безопасности RDF и OWL-данных / В.К. Хоанг, А.Ф. Тузовский // IX Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования». - Томск, 2012. — С. 277-279.

16. Хоанг Ван Кует. Многоуровневая безопасность для семантических баз данных / В. К. Хоанг, А. Ф. Тузовский // Вестник науки Сибири. - Томск, 2012. № 5 (6). - С. 93-99.

17. Хоанг Ван Кует. Средства поддержки безопасности работы с семантическими данными / В. К. Хоанг, А. Ф. Тузовский // IV Всероссийская научно-практическая конференция «Научная инициатива иностранных студентов и аспирантов российских вузов». - Томск, 2011. — С. 249-253.

18. Хоанг Ван Кует. Многоуровневая безопасность RDF и OWL документов / В. К. Хоанг, А. Ф. Тузовский // V Всероссийская научно-практическая конференция «Научная инициатива иностранных студентов и аспирантов российских вузов». - Томск, 2012. - С. 291-294.

19. Хоанг Ван Кует. Разработка программы поддержки безопасности работы с семантическими базами знаний/ В. К. Хоанг, А. Ф. Тузовский // VI Всероссийская научно-практическая конференция «Научная инициатива иностранных студентов и аспирантов российских вузов». - Томск, 2013. - С. 250253.

20. Хоанг Ван Кует. Средства для построения системы безопасности семантических данных / В. К. Хоанг, А. Ф. Тузовский // VI Всероссийская научно-практическая конференция «Научная инициатива иностранных студентов и аспирантов российских вузов». - Томск, 2013. - С. 253-256.

21 .Хоанг Ван Кует. Программная система «ContrLSD - программа контроля логических выводов в семантических базах данных» / В. К. Хоанг, А.Ф. Тузовский // Свидетельство о государственной регистрации программы для ЭВМ № 2013614659. М.: Федеральная служба по интеллектуальной собственности (Роспатент). — 2013.

22. Хоанг Ван Кует. Программная система «SecWSD - программа поддержки безопасности работы с семантическими базами знаний» / Хоанг Ван Кует, А.Ф. Тузовский // Свидетельство о государственной регистрации программы для ЭВМ в Роспатенте РФ № 2013614660. М.: Федеральная служба по интеллектуальной собственности (Роспатент). - 2013.

л

Подписано к печати 27.12.2013. Формат 60x84/16. Бумага «Снегурочка» Печать XEROX. Усл. печ. л. 1,16. Уч.-изд. л. 1,05.

_Заказ 1503-13. Тираж 120 экз._

Национальный исследовательский Томский политехнический университет Система менеджмента качества Издательства Томского политехнического университета сертифицирована в соответствии с требованиями ISO 9001:2008

ИЗШЕЛЬСТВ^'ТПУ. 634050, г. Томск, пр. Ленина, 30 Тел./факс: 8(3822)56-35-35, www.tpu.ru

Текст работы Хоанг Ван Кует, диссертация по теме Методы и системы защиты информации, информационная безопасность

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

0420145ói 62

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

Хоанг Ван Кует

СИСТЕМА ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ \ РАБОТЫ СЕМАНТИЧЕСКИХ БАЗ ДАННЫХ,

ОСНОВАННЫХ НА ТЕХНОЛОГИЯХ SEMANTIC WEB

Специальность 05.13.19 - Методы и системы защиты информации,

информационная безопасность

Диссертация

на соискание учёной степени кандидата технических наук

Научный руководитель: доктор технических наук, профессор

Тузовский А.Ф.

Томск - 2013

Оглавление

Введение..........................................................................................................................4

Глава 1. Обеспечение безопасности семантических баз данных.......................11

1.1. Семантические технологии Semantic Web.....................................................11

1.2. Семантические базы данных............................................................................24

1.3. Системы управления семантическими базами данных.................................27

1.4. Информационные системы на основе семантических баз данных..............29

1.5. Проблемы обеспечения безопасности семантических баз данных.............34

1.6. Выводы по главе................................................................................................42

Глава 2. Архитектура системы безопасности семантических баз данных......44

2.1. Онтологические модели в семантической базе данных................................44

2.2. Средства обеспечения безопасности семантических баз данных................48

2.3. Предлагаемая архитектура системы обеспечения безопасности семантических баз данных...............................................................................55

2.4. Постановка задач...............................................................................................62

2.5. Выводы по главе................................................................................................70

Глава 3. Алгоритмы обеспечения безопасности семантических баз данных. 72

3.1. Алгоритмы согласования уровней безопасности элементов онтологий и метаданных........................................................................................................72

3.2. Алгоритм определения покрытия безопасности семантических баз данных................................................................................................................79

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

3.4. Метод обнаружения нарушений результатов логических выводов............85

»

3.5. Алгоритм контроля выполнения запросов к семантическим базам данных................................................................................................................92

3.6. Пример контроля результатов логических выводов в СБД..........................95

3.7. Выводы по главе..............................................................................................101

Глава 4. Реализация и исследование алгоритмов обеспечения безопасности

семантических баз данных..........................................................................102

4.1. Реализация программного обеспечения.......................................................102

4.2. Исследование эффективности разработанных методов и алгоритмов......113

4.3. Описание внедрения.......................................................................................126

4.4. Выводы по главе..............................................................................................133

Заключение.................................................................................................................134

Список сокращений и условных обозначений....................................................136

Словарь терминов.....................................................................................................137

Список иллюстративного материала....................................................................139

Литература..................................................................................................................143

Приложения................................................................................................................154

Приложение 1. Множество логических правил..................................................154

Приложение 2. Онтологии системы семантической базы данных

информационных ресурсов предприятия.....................................................156

Приложение 3. UML - Диаграммы программ.....................................................160

Приложение 4. Примеры реализации алгоритмов на языке Java......................163

Приложение 5. Свидетельства на программы.....................................................174

Приложение 6. Акты внедрения...........................................................................176

Приложение 7. Дипломы за участие в научных конференциях........................179

Введение

В настоящее время современные информационные системы организаций создаются на основе реляционных баз данных (БД), в которых в основном описывается синтаксис данных. Использование реляционных БД имеет ряд недостатков, таких, как жёсткость схем, недостаточная выразительность, сложность интеграции БД и отсутствие возможности выполнения логических вводов на данных. В связи с этим начинают создаваться и использоваться информационные системы организаций, основанные на семантических технологиях [1, 2], основной идеей которых является переход от работы только с синтаксисом (структурой) информации к работе с её семантикой (смыслом) и к семантическому моделированию (с помощью онтологий) различных предметных областей. С учётом этого основным элементом семантических информационных систем становятся семантические базы данных (СБД), которые включают не только данные, но и семантические модели, на основе которых эти данные формируются. Для практического использования подобных систем требуется исследовать и разработать модели и алгоритмы для набора базовых сервисов. Одним из таких сервисов является обеспечение безопасности работы СБД. Задача данного сервиса заключается в том, что только пользователи, имеющие соответствующие права, смогут получить доступ к данным, хранящимся в СБД, и они не должны иметь какой-либо возможности получить неразрешённые им элементы онтологий и метаданных с помощью логических правил.

В настоящее время разработано много методов обеспечения информационной безопасности операционных систем и реляционных баз данных. Но данные методы не могут использоваться для обеспечения безопасности семантических БД. Это связано с тем, что для СБД характерна сильная иерархическая связанность между элементами, а кроме этого, в них имеется возможность получения новой информации на основе известных фактов путём использования логических правил. Для решения задач обеспечения безопасности СБД уже разработаны отдельные методы и алгоритмы, такие, как, например: контроль доступа пользователей на основе именованных 1ШР-графов, контроль доступа пользователей на

уровне триплетов в RDF-хранилище. Этому посвящены работы таких зарубежных учёных, как: R. Kienast, С. Baumgartner L. Qin, V. Atluri, N. Yialelis, E. Lupu, M. Sloman, L. Wang, D. Wijesekera, S. Jajodia, Reddivari, P. L. Kagal, T. Finin, A. Joshi, T . Bhavani и др. Но разработанные методы и алгоритмы имеют ряд недостатков, которые не позволяют эффективно обеспечить комплексную безопасность СБД.

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

Для достижения поставленной цели было необходимо решить следующие задачи:

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

2) Разработать алгоритмы формирования согласованных уровней безопасности всех элементов онтологий, хранящихся в СБД.

3) Создать алгоритм определения уровней безопасности всех триплетов в семантических БД.

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

5) Разработать метод обнаружения нарушений безопасности результатов логических выводов.

6) Разработать алгоритм контроля полученных результатов при выполнении запросов к семантическим БД.

7) Создать архитектуру системы обеспечения безопасности семантических БД.

8) Реализовать программное обеспечение поддержки безопасности работы с семантическими БД.

Объектом исследования является безопасность семантических БД при выполнении пользователями различных операций.

Предметом исследования являются методы и алгоритмы поддержки безопасности работы с семантическими БД.

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

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

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

2) Создан алгоритм определения покрытия безопасности семантических БД, отличающийся возможностью согласования и определения уровней безопасности 1ШР-триплетов.

3) Предложен алгоритм определения покрытия безопасности результатов логических выводов семантических БД, отличающийся возможностью определить уровни безопасности всех результатов логических выводов, полученных путём использования логических правил.

4) Создан метод обнаружения нарушений результатов логических выводов в семантических БД, отличающийся возможностью представления СБД в виде ЬШБ-графов и контроля раскрытых триплетов, на основе которых пользователи могут получить неразрешённые результаты логических выводов путём использования логических правил.

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

Практическая значимость диссертационной работы заключается в создании архитектуры обеспечения безопасности семантических БД, позволяющей с допустимыми задержками обеспечить поддержку безопасности СБД при интенсивной нагрузке, и в возможности практического использования разработанных методов и алгоритмов для поддержки безопасности работы семантических БД в информационных системах организаций. Это подтверждено путём создания прототипов программного обеспечения, на которые были получены два свидетельства Роспатента: «Соп^ЬБО - программа контроля логических выводов в семантических базах данных» и «8ес\¥8Б - программа поддержки безопасности работы с семантическими базами знаний» (Приложение 5).

Предложенные в диссертационной работе модели и алгоритмы (и их программная реализация) прошли опытную эксплуатацию в компаниях «ВАУ1М1ЬК» (Вьетнам, г. Ханой) и ООО «Томский завод резиновой обуви» (Россия, г. Томск), что подтверждено соответствующими актами (Приложение 6). Кроме этого, разработанные алгоритмы используются в учебном процессе кафедры оптимизации систем управления Института кибернетики НИ ТПУ (Приложение 6).

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

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

2) Разработанный алгоритм определения покрытия безопасности семантических БД обеспечивает эффективное управление доступом пользователей к каждому КОР-триплету метаданных.

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

4) Предложенный метод обнаружения нарушений результатов логических выводов позволяет надёжно контролировать результаты логических выводов в СБД.

5) Алгоритм контроля полученных результатов при выполнении запросов к семантическим БД гарантирует получение пользователями только тех результатов, которые соответствуют их уровням доступа.

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

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

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

1) VII и VIII Международная научно-практическая конференция «Электронные средства и системы управления» (Томск, 2011, 2012);

2) V, VI и VII Всероссийские научно-практические конференции иностранных студентов, магистрантов и аспирантов, обучающихся в ТПУ «Коммуникация иностранных студентов, магистрантов и аспирантов, в учебно-профессиональной и научной сферах» (Томск, 2011, 2012, 2013);

3) IX Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных с международным участием «Молодёжь и современные информационные технологии» (Томск, 2012);

4) XVIII Международная научно-практическая конференция студентов и молодых учёных «Современные техника и технологии» (Томск, 2012);

5) X Всероссийская научно-практическая конференция студентов, аспирантов и молодых учёных «Технологии Microsoft в теории и практике программирования» (Томск, 2013);

6) IV Всероссийская конференция с международным участием «ЗНАНИЯ -ОНТОЛОГИИ - ТЕОРИИ» (Новосибирск, 2013).

Несколько представленных на конференциях докладов было отмечено дипломами 1 и 2 степеней (Приложение 7).

Структура и объем диссертации

Диссертация содержит введение, 4 главы, список литературы (120 наименований) и 7 приложений. Общий объём диссертации составляет 180 страниц, включающих 15 таблиц и 57 рисунков.

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

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

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

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

В третьей главе описаны алгоритмы согласования уровней безопасности элементов онтологий и определения покрытия безопасности всех триплетов СБД. Приведено описание алгоритмов определения уровней безопасности результатов логических выводов и представления СБД в виде RDF-графов, описан метод об-

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

В четвертой главе описаны разработанные (зарегистрированные в Роспатенте) программы, в том числе «Соп^ЬБО - программа контроля логических выводов в семантических базах данных» и «8ес\¥80 - программа поддержки безопасности работы с семантическими базами знаний. Поясняются функции разработанной системы, использующие разработанные в работе алгоритмы.

Приведены результаты экспериментов исследования эффективности разработанных методов и алгоритмов поддержки безопасности работы с СБ Д.

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

В приложениях приведены логические правила на языке 8\У11Ь, примеры программной реализации разработанных алгоритмов, полученные свидетельства на программы, акты внедрения результатов работы и дипломы за участие в научных конференциях.

Глава 1. Обеспечение безопасности семантических баз данных

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