Help:Sarif
Работа с SARIF
Генерация SARIF
Поддерживается генерация файла в формате SARIF, который может быть прочитан при помощи расширения Microsoft SARIF Viewer, GitHub или DefectDojo. Итоговый файл содержит сопоставление внутренних значений критичности маркеров со значениями уровня SARIF по следующему правилу:
- Critical -> error
- Major -> warning
- Minor -> note
- Normal -> none
При импорте результатов анализа в SARIF должны быть предоставлены данные для подключения к серверу, так как значения критичности маркеров берутся оттуда.
Общие параметры для импорта:
- out-file, o — имя выходного файла или «-» для вывода в stdout
- scheme — печать примера схемы выходного файла SARIF
- include-contents — включать контент файлов, в которых обнаружены предупреждения
Генерация из .svres
При импорте из файла svres используются дополнительные параметры:
- svace — путь к исполняемому файлу svace
- svace-dir — интерпретировать путь, как путь к директории .svace-dir
- path_to_project_or_svace-dir — путь к директории проекта или к .svace-dir. Его можно не указывать, тогда в качестве пути к проекту будет использована текущая директория.
Пример команды для генерации файла SARIF:
./svacer sarif -o <path_to_result_file> --svace <path_to_svace> [path_to_project_or_svace-dir]
Генерация из данных с сервера
При импорте из данных с сервера используются следующие дополнительные параметры:
- from-server — опция для получения данных с сервера
- project — имя или id проекта
- branch — имя или id ветки (master по умолчанию)
- snapshot — имя или id снимка (last по умолчанию)
Также, для корректного получения необходимого проекта, должен быть указан пользователь, у которого есть доступ к этому проекту.
Пример команды для генерации файла SARIF из данных с сервера:
./svacer sarif -o <path_to_result_file> --from-server --user <user> --password <password> --project <project_name>
Загрузка на сервер из SARIF
При загрузке данных на сервер используются следующие параметры:
- read-file, r — файл SARIF, из которого необходимо читать данные
- project — название проекта на сервере (по умолчанию совпадает с именем файла)
- branch — название ветки на сервере (по умолчанию master)
- snapshot — название снимка на сервере (по умолчанию время загрузки)
- skip-source — пропускать исходный код файлов с предупреждениями
- path-prefix — заменять префиксы в названии файлов (prefix:replacement)
Пример команды для загрузки на сервер:
./svacer sarif upload -r <input_file>