По мнению некоторых авторов система разграничения доступа должна содержать четыре блока:
- блок идентификации и аутентификации субъектов доступа;
- диспетчер доступа;
- блок криптографического преобразования информации при ее хранении и передаче;
- блок очистки памяти.
Особый интерес представляет блок-схема диспетчера доступа (см. рис. 5).
Идентификация и аутентификация субъектов осуществляется в момент их доступа к устройствам, в том числе и дистанционного доступа.
Диспетчер доступа реализуется в виде аппаратно-программных механизмов и обеспечивает необходимую дисциплину разграничения доступа субъектов к объектам доступа (в том числе и к аппаратным блокам, узлам, устройствам). Диспетчер доступа разграничивает доступ к внутренним ресурсам АИС субъектов, уже получивших доступ к этим системам. Необходимость использования диспетчера доступа возникает только в многопользовательских АИС.
Запрос на пользование i-го субъекта к j-му объекту поступает в блок управления базой полномочий и характеристик доступа и в блок регистрации событий. Полномочия субъекта и характеристики объекта доступа анализируются в блоке принятия решения, который выдает сигнал разрешения выполнения запроса, либо сигнал отказа в допуске. Если число попыток субъекта допуска получить доступ к запрещенным для него объектам превысит определенную границу (обычно 3 раза), то блок принятия решений на основании данных блока регистрации выдает сигнал «НСДИ» администратору системы безопасности. Администратор может блокировать работу субъекта, нарушающего правила доступа к системе, и выяснить причину нарушений. Кроме преднамеренных попыток НСДИ, диспетчер фиксирует нарушения правил разграничения, явившихся следствием отказов, сбоев аппаратных и программных средств, а так же вызванных ошибками персонала и пользователей.
Ранее уже отмечалось, что в распределенных АИС криптографическое закрытие информации является единственным надежным способом защиты от НСДИ.
В системе разграничения доступа (СРД) должна быть реализована функция очистки оперативной памяти и рабочих областей на внешних запоминающих устройствах после завершений выполнения программы, обрабатывающей конфиденциальные данные. Причем очистка должна производиться путем записи в освободившиеся участки памяти определенной последовательности двоичных кодов, а не удалением только учетной информации о файлах из таблиц ОС, как это делается при стандартном удалении средствами ОС.