Объект модели безопасности 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.