Списки управления доступом
Рефераты >> Программирование и компьютеры >> Списки управления доступом

Любая ячейка матрицы содержит набор прав доступа s к объекту o, принадлежащих множеству прав доступа R.

2.4.1.1 Поведение системы

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

command

if in and (условия выполнения команды)

in and

in and

then

(операции, составляющие команду)

, где a - имя команды; - параметры команды, являющиеся идентификаторами субъектов и объектов; и - индексы субъектов и объектов в диапазоне от 1 до k; - элементарные операции (выполняются только в том случае, если все условия, означающие присутствие указанных прав доступа в ячейках матрицы M, являются истинными).

Элементарные операции

В классической модели допустимы только следующие элементарные операции:

enter r into (добавление субъекту s права r для объекта o)

delete r from (удаление у субъекта s права r для объекта o)

create subject s (создание нового субъекта s)

create object o (создание нового объекта o)

destroy subject s (удаление существующего субъекта s)

destroy object o (удаление существующего объекта o)

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

Таблица 2 – Базовые операции модели Харрисона-Руззо-Ульмана

Команда

Описание

enter r into (где )

, если

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

delete r from (где )

, если

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

Create subject s (где )

для всех

для всех

для всех

Операция является немонотонной. Предусловие выполнения операции – отсутствие создаваемого субъекта/объекта.

destroy subject s (где )

для всех

Операция является немонотонной. Предусловие выполнения операции – наличие субъекта/объекта.

create object o (где )

, если

для всех

Операция является монотонной. Предусловие выполнения операции – отсутствие создаваемого субъекта/объекта.

destroy object o (где )

для всех

Операция является немонотонной. Предусловие выполнения операции – наличие субъекта/объекта.


Страница: