Модель безопасности Bool позволяет выполнять логические операции.
PSL-файл с описанием модели безопасности Bool находится в KasperskyOS SDK по пути:
toolchain/include/nk/basic.psl
Объект модели безопасности Bool
В файле basic.psl
содержится декларация, которая создает объект модели безопасности Bool с именем bool
. Соответственно, включение файла basic.psl
в описание политики безопасности решения обеспечивает создание объекта модели безопасности Bool по умолчанию.
Объект модели безопасности Bool не имеет параметров и не может быть покрыт аудитом безопасности.
Создавать дополнительные объекты модели безопасности Bool не требуется.
Методы модели безопасности Bool
Модель безопасности Bool содержит выражения, которые выполняют логические операции и возвращают значения типа Boolean
. Для вызова этих выражений нужно использовать следующие логические операторы:
!
<Boolean
> – "логическое НЕ";Boolean
> &&
<Boolean
> – "логическое И";Boolean
> ||
<Boolean
> – "логическое ИЛИ";Boolean
> ==>
<Boolean
> – "импликация" (!
<Boolean
> ||
<Boolean
>).Также модель безопасности Bool содержит выражения all
, any
и cond
.
Выражение all
выполняет "логическое И" для произвольного числа значений типа Boolean
. Возвращает значения типа Boolean
. Если передать через параметр пустой список значений ([]
), возвращает true
. Чтобы вызвать выражение, нужно использовать следующую конструкцию:
bool.all (<List<Boolean>>)
Выражение any
выполняет "логическое ИЛИ" для произвольного числа значений типа Boolean
. Возвращает значения типа Boolean
. Если передать через параметр пустой список значений ([]
), возвращает false
. Чтобы вызвать выражение, нужно использовать следующую конструкцию:
bool.any (<List<Boolean>>)
Выражение cond
выполняет тернарную условную операцию. Возвращает значения типа ScalarLiteral
. Чтобы вызвать выражение, нужно использовать следующую конструкцию:
bool.cond
{ if : <Boolean> // Условие
, then : <ScalarLiteral> // Значение, возвращаемое при истинности условия
, else : <ScalarLiteral> // Значение, возвращаемое при ложности условия
}
Помимо выражений модель безопасности Bool включает правило assert
, которое работает так же, как одноименное правило модели безопасности Base.