
В отпуске поразмышлял о том, как могла бы выглядеть более жизнеспособная альтернатива OVAL-у - проект SOVA. Хотелось бы взять лучшее от OVAL и кардинально упростить создание контента и сканеров, поддерживающих новый формат. С перспективой конвертации существующего OVAL-контента в SOVA.
Пока основные идеи такие:
📃 Отказаться от XML в пользу JSON, с которым проще работать и автоматически, и вручную.
⚙️ Сохранить основную фишку OVAL-а - статусы дефинишенов определять комбинацией статусов тестов или других дефинишенов.
🧪 Типы тестов вынести из спецификации языка и упростить их заведение. Вплоть до возможности создания тестов с выполнением произвольного bash-скрипта на хосте или выполнением веб-запросов. 😈
🧭 Описание параметров тестов (объектов и стейтов) хранить прямо в блоке с логикой детектирования статуса дефинишена. Тогда не придётся бегать по разным разделам документа, чтобы понять фактическую логику детектирования. И это важнее некоторой избыточности описания. 😉