Пример Defer to Kernel
Пример Defer to Kernel
демонстрирует использование паттернов Defer to Kernel и Policy Decision Point.
Пример Defer to Kernel
содержит три пользовательские сущности: PictureManager
, ValidPictureClient
и NonValidPictureClient
.
В этом примере сущности ValidPictureClient
и NonValidPictureClient
обращаются к сущности PictureManager
для получения информации.
Только сущности ValidPictureClient
разрешено взаимодействие с сущностью PictureManager
.
Ядро KasperskyOS гарантирует изоляцию сущностей.
Контроль взаимодействия сущностей в KasperskyOS вынесен в модуль безопасности Kaspersky Security Module. Эта подсистема анализирует каждый отправляемый запрос и ответ и на основе заданной политики безопасности выносит решение: разрешить или запретить его доставку.
Политика безопасности в примере Defer to Kernel
имеет следующие особенности:
- Сущности
ValidPictureClient
явно разрешено взаимодействие с сущностьюPictureManager
. - Сущности
NonValidPictureClient
взаимодействие с сущностьюPictureManager
не разрешено явно. Таким образом, это взаимодействие запрещено (принцип Default Deny).
Динамическое создание IPC-каналов
Пример также демонстрирует возможность динамического создания IPC-каналов между сущностями. Динамическое создание IPC-каналов осуществляется с помощью сервера имен – специального сервиса ядра, представленного сущностью NameServer
. Возможность динамического создания IPC-каналов позволяет изменять топологию взаимодействия сущностей "на лету".
Любая сущность, которой разрешено взаимодействие с NameServer
по IPC, может зарегистрировать в сервере имен свои интерфейсы. Другая сущность может запросить у сервера имен зарегистрированные интерфейсы, после чего осуществить подключение к нужному интерфейсу.
При этом все взаимодействия по IPC (даже созданные динамически) контролируются с помощью модуля безопасности.
Файлы примера
Код примера и скрипты для сборки находятся по следующему пути:
/opt/KasperskyOS-Community-Edition-<version>/examples/defer_to_kernel
Сборка и запуск примера
См. "Сборка и запуск примеров".