чтобы владелец объекта не мог отдать «владение» объектом другому субъекту и тем самым снять с себя ответственность за некорректные действия с объектом.
Для определения прав доступа субъектов к объектам при избирательном разграничении доступа используется матрица доступа. Строки этой матрицы представляют собой объекты, столбцы – субъекты (или наоборот). В каждой ячейке матрицы хранится совокупность прав доступа, предоставленных данному субъекту на данный объект.
Рис. 8. Матрица прав доступа к файлам
Поскольку матрица доступа очень велика (типичный объем для современной ОС составляет несколько десятков мегабайтов), матрица доступа никогда не хранится в системе в явном виде. Для сокращения объема матрицы доступа используется объединение субъектов доступа в группы. Права, предоставленные группе субъектов для доступа к данному объекту, предоставляются каждому субъекту группы.
Для каждого объекта доступа хранятся его атрибуты зашиты (идентификатор владельца объекта и строка матрицы доступа в кодированном виде).
На практике используются два способа хранения строки матрицы доступа:
Вектор доступа (UNIX) – запись фиксированной длины, разбитая на несколько полей. Каждое поле описывает права доступа к данному объекту некоторого субъекта. С помощью вектора доступа можно описать права доступа к объекту только фиксированного числа субъектов, что накладывает существенные ограничения на систему разграничения доступа.
Список доступа (VAX/VMS, Windows NT) – запись переменной длины, элементами которой являются поля, содержащие:
• идентификатор субъекта;
• права, предоставленные этому субъекту на данный объект;
• различные флаги и атрибуты.
Фактически вектор доступа представляет собой список доступа фиксированной длины и является его частным случаем.
Хранение матрицы доступа в виде совокупности списков доступа позволяет реализовать более мощный и гибкий механизм разграничения доступа, однако требует гораздо больше оперативной и дисковой памяти для хранения атрибутов защиты объекта, усложняет техническую реализацию правил разграничения доступа и создает проблему, связанную с тем, что значения элементов списка доступа могут противоречить друг другу.
Предположим, один элемент списка доступа разрешает некоторому пользователю доступ к объекту, а другой элемент списка запрещает доступ к объекту группе, в которую входит этот пользователь. При использовании списков доступа правила разграничения доступа должны включать в себя правила разрешения этих противоречий.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «ЛитРес».
Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.
Безопасно оплатить книгу можно банковской картой