Сканирование директории¶
Сканирование директории производится при помощи субкоманды scan dir
.
При запуске агент:
- Рекурсивно проходит по всему содержимому указанной директории (если указан конкретный манифест, обрабатывает только его)
- Идентифицирует файлы манифестов и разбирает их
- Хеширует каждый файл (при запуске с
--with-hashes
) - Формирует запрос к инсталляции
- После получения результата показывает суммарную информацию по найденным манифестам, зависимостям, уязвимостям, сработавшим политикам и более подробную информацию по каждой уязвимости и сработавшей политике
- Дополнительно в текущей директории формируется файл
bom.json
, содержащий полный Software Bill of Materials в формате CycloneDX.
В зависимости от результата работы и параметров запуска агент возвращает соответствующий exit code.
По умолчанию агент проходит по содержимому директории рекурсивно (включая вложенные директории). Для нерекурсивного сканирования необходимо добавить параметр --no-recursion
к команде scan dir
.
Пример запуска команды¶
./johnny scan dir . \
--api_token <api_token> \
--api_url <api_url> \
--ignore .tmp --ignore fixtures --ignore .git
Параметры команды¶
Команда scan dir имеет три уникальных параметра, помимо общих настроек команды сканирования:
--branch-or-tag
– ссылка на ветку или тег репозитория (например,refs/tags/v1.0
);--commit
– указание хэша коммита;--no-recursion
– отключение рекурсивного сканирования каталогов.
Для сводки доступных параметров команды и инструкции по использованию можно вызвать команду с флагом -h, --help
.