Выражение contains модели безопасности HashSet
contains {sid : <Sid>, entry : <Entry>}
Проверяет, содержится ли значение entry
в таблице, ассоциированной с ресурсом, который имеет идентификатор безопасности sid
.
Возвращает значение типа Boolean
. Если значение entry
содержится в таблице, возвращает true
. Иначе возвращает false
.
Выполняется некорректно в следующих случаях:
- Ресурс с идентификатором безопасности
sid
не ассоциирован с таблицей из пула таблиц используемого объекта модели безопасности HashSet. - Идентификатор безопасности
sid
вне допустимого диапазона.
Если выражение выполнено некорректно, модуль безопасности Kaspersky Security Module возвращает решение "запрещено".
Пример:
/* Сущность класса Server получит решение "разрешено"
* от модуля безопасности Kaspersky Security Module, вызывая метод
* интерфейса безопасности Check, если значение 42
* содержится в таблице, ассоциированной с этой сущностью.
* Иначе сущность класса Server получит решение "запрещено"
* от модуля безопасности, вызывая метод интерфейса
* безопасности Check. */
security src=Server, method=Check {
assert(S.contains {sid : src_sid, entry : 42})
}