Строительные исследования

Строительные исследования



назад    Оглавление    вперед


страница - 0

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

Г.П. Агибалов (Agibalov@isc.tsu.ru), А.А. Скутин (Skutin@isc.tsu.ru)

Томский государственный университет

1. Введение

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

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

В изложении технологии сформулирована последовательность действий, которые следует осуществить разработчику для получения безопасной КИС как на этапе ее проектирования, так и на этапе реализации проекта. В частности, реализация репликации предполагает криптографическую защиту пересылаемых данных, а реализация разграничения прав доступа - аутентификацию субъектов. По этой технологии разработана безопасная корпоративная информационная система "Коммерсант" [4] для ОАО "Томскнефтепродукт" ВНК.

Работа выполнена при финансовой поддержке Минобразования РФ фундаментальных исследований в области технических наук (грант Т00-3.1-2851).

2. Математическая модель

Таблицы

Пусть имеется конечное линейно упорядоченное множество A предметных переменных a1, ..., a„, называемых атрибутами, с областями возможных значений D1, Dn соответственно, называемыми их доменами и содержащими символ Л - неопределенное значение. Домены различных атрибутов могут совпадать. В этом случае атрибуты называются однотипными. Для любого подмножества McA декартово произведение DM доменов всех атрибутов в M называется доменом подмножества M, а его элементы - значениями этого подмножества. Пара t=(M, K), где


0?K<zMo4, называется таблицей. В ней переменные в M называются атрибутами таблицы, а K -первичным ключом таблицы. Атрибут a таблицы t обозначается t.a. Значением таблицы t называется всякое подмножество ScDM, для которого значения ключа K в различных кортежах из S различны. Пустое множество считается значением любой таблицы. Пара (t,S), где S - значение таблицы t, называется информационной таблицей, или и-таблицей. В ней S называется информацией, а t -носителем информационной таблицы. Ее первичным ключом и атрибутами считаются соответственно первичный ключ и атрибуты носителя t. В случае S={s} информационная таблица (t,S) называется информационной строкой и обозначается (t,s). Информационная строка (t,s), где sgS, называется строкой в (t,S). Информационная таблица (t,0) обозначается t. Тем самым любая таблица t считается информационной с пустым значением.

Всюду далее для LcMcA и ScDM через S[L] обозначается проекция на L подмножества S, т.е. множество всех тех наборов значений переменных в L, которые содержатся в кортежах из S. В частном случае, когда S={s}mni L={a}, вместо S[L] пишем соответственно s[L], S[a] или s[a]. Кроме того, если K - первичный ключ и a - атрибут и-таблицы (t,S), q - значение K, sgS и s[K]=q, то пусть S[q,a]= s[a]. В этом случае символ t[q,a] называют ячейкой таблицы (t,S) с координатами (q,a) и значением S[q,a]. Величину S[q,a] называют также значением атрибута a в таблице (t,S) на ключе q и записывают как t. a(q).

Наконец, для упрощения записи любой кортеж символов Л обозначается Л.

Отношение ссылочности Отношением ссылочности на множестве таблиц T называется бинарное отношение pccJ2, заданное таким образом, что если t1=(M1,K1), t2=(M2,K2) и t2pt1, то в M2 зафиксировано непустое подмножество K12, для которого выполнено следующее условие ссылочной целостности таблиц: : DK12 cc DK1. В этом случае K12 называют внешним ключом таблицы t1 в таблице t2 и говорят, что K12

ссылается на K1. Эти понятия распространяются на пары информационных таблиц (t1,S1) и (t2,S2) следующим образом: внешний ключ K12 первой во второй - это внешний ключ t1 в t2 и (t2,S2)p(t1,S1)

О t2pt1&S2[K12]ciS1[K1]}.

Объекты

Пара o=(I,p), где I - некоторое множество информационных таблиц с попарно различными носителями и p - отношение ссылочности на нем, называется объектом, если граф (I,p) имеет сток, т.е. вершину, достижимую из всех других его вершин; в этом случае сток графа (I,p) называется родительской таблицей, а ее первичный ключ - первичным ключом объекта о. По определению, каждая информационная таблица является объектом. Пара (T,p), где T={t: (t,S)eI} - множество носителей всех и-таблиц в I, называется носителем, или типом объекта о. Объекты с общим носителем называются однотипными. По определению, однотипные объекты могут различаться только значениями таблиц в них. Их первичные ключи, понятно, одинаковы. Атрибуты и ячейки таблиц объекта называются атрибутами и ячейками самого объекта. Объект называется формальным, если каждая его таблица имеет пустое значение. В отличие от этого, все другие объекты можно называть информационными. Два объекта о1 и о2 не пересекаются, если не пересекаются множества таблиц их носителей.

Множество всех информационных таблиц в объектах некоторого множества объектов O обозначается далее как IT(O). В частности, IT(I,p)=I.

Подобъекты

Пусть o=(I,p) - некоторый объект, (t,S) - его родительская таблица, K - ее (и объекта) первичный ключ и QccS[K] - некоторое подмножество значений K в S. Определим множество


информационных таблиц I(Q) по следующим индуктивным правилам:

1)если R={s: sgS& s[K]eQ}, то (tR)eI(Q) ;

2)если (t1,S1)eI(Q), (t2,£2)eI, t2pt1, K1 - первичный ключ в t1, K12 - внешний ключ t1 в t2, ссылающийся на K1 и R={s2: s2eS2& s2[K12]eS1[K1]}, то (t2,R)eI(Q);

3)других информационных таблиц в I(Q) нет.

По определению, (I(Q),p) является объектом, однотипным объекту о, и называется подобъектом последнего. В случае Q={q} вместо I(Q) пишем I(q) и называем (I(q),p) подобъектом в о, порожденным значением первичного ключа q. Если о1 есть подобъект объекта о2, то пишем о1оэ2 и говорим, что о1 включен в о2.

Данные

Данное - это объект, родительская таблица которого является информационной строкой. В частности, любая информационная строка есть данное. Данным является также подобъект всякого объекта, порожденный любым значением q его первичного ключа. Оно называется данным этого объекта, отвечающим значению первичного ключа q. Таким образом, каждый объект о представляет собой множество данных, отвечающих различным значениям первичного ключа и порождаемых этими значениями в качестве подобъектов в о. В частности, если объектом служит информационная таблица, то его данными являются строки в этой таблице. Заметим также, что объект и его данные однотипны. Пара (o,q), где о - имя объекта и q - значение его первичного ключа, которому отвечает некоторое данное, называется далее идентификатором этого данного. Наконец, условимся значение первичного ключа K данного d обозначать d[K]. Таким образом, если d=(o,q) и (t,s) - родительская таблица данного d, то d[K]=q=s[K].

Логические выражения

Предполагается, что на доменах атрибутов могут быть заданы некоторые операции и предикаты. Всякое выражениеfxh xm), гдеf - некоторая т-арная операция, заданная на домене Di, и x1, ..., xm суть элементы в Di или переменные, определенные на Di, называется термом (на D,), а выражение p(f1, ...,fm), где p - некоторый т-местный предикат, заданный на Di, иf1, ..., fm суть термы на Di, называется элементарной формулой (на D,). Примером элементарной формулы является сравнение t[q,a]=d, где t[q,a] - ячейка некоторой таблицы и deDa. Выражения, построенные обычным образом из элементарных формул при помощи логических связок -, л, v, =>, «, называются логическими выражениями. Примером логического выражения служит элементарная конъюнкция - конъюнкция конечного числа сравнений. Говорят, что термf(x1, xm), элементарная формулаp(f1, fm) или логическое выражение P принадлежат объекту о, если переменные в них являются символами его ячеек, т.е. выражениями вида t[q,a], где t - информационная таблица в о, a -ее атрибут и q - значение ее первичного ключа. В этом случае значением термаf(x1, xm) на Dt для объекта о называется элементf(b1, ., bm) в Db где для каждого j=1, ., m

bj=xj, если xjDi, и bj есть значение t.a(q) в о, если xj= t[q,a]; значение элементарной формулы pf 1, fm) для о определяется как p(q1, qm)G{и,л}, где qj -значение fj для о, j= 1, ., m; и наконец, значение логического выражения P для о вычисляется по значениям для о элементарных формул в нем при помощи истинностных таблиц логических связок и обозначается P(o).

Пара (P,co), где P - логическое выражение, принадлежащее объекту о, и со - оператор присвоения на о, называется условным оператором присвоения на о.

Операции с объектами

Над однотипными объектами можно выполнять любые теоретико-множественные операции, в том числе: объединение - (I1,p)u(I2,p)=(I,p), где I={(t,S1uS2): (t,S1)eI1&(t,S2)eI2}, и вычитание -




содержание:
[стр.Введение] [стр.1] [стр.2] [стр.3]