Help:Sarif: Difference between revisions

From Svacer Wiki
No edit summary
No edit summary
Line 8: Line 8:
* Minor -> note
* Minor -> note
* Normal -> none
* Normal -> none


При импорте результатов анализа в SARIF должны быть предоставлены данные для подключения к серверу, так как значения критичности маркеров берутся оттуда.
При импорте результатов анализа в SARIF должны быть предоставлены данные для подключения к серверу, так как значения критичности маркеров берутся оттуда.


Общие параметры для импорта:
Общие параметры для импорта:
Line 17: Line 15:
* scheme — печать примера схемы выходного файла SARIF
* scheme — печать примера схемы выходного файла SARIF
* include-contents — включать контент файлов, в которых обнаружены предупреждения
* include-contents — включать контент файлов, в которых обнаружены предупреждения


==== Генерация из .svres ====
==== Генерация из .svres ====
Line 23: Line 20:
* svace — путь к исполняемому файлу svace
* svace — путь к исполняемому файлу svace
* svace-dir — интерпретировать путь, как путь к директории .svace-dir
* svace-dir — интерпретировать путь, как путь к директории .svace-dir


Пример команды для генерации файла SARIF:
Пример команды для генерации файла SARIF:


     ./svacer sarif -o <path_to_result_file> --svace <path_to_svace> <path_to_project_or_svace-dir>
     ./svacer sarif -o <path_to_result_file> --svace <path_to_svace> <path_to_project_or_svace-dir>


==== Генерация из данных с сервера ====
==== Генерация из данных с сервера ====
Line 36: Line 31:
* branch — имя или id ветки (master по умолчанию)
* branch — имя или id ветки (master по умолчанию)
* snapshot — имя или id снимка (last по умолчанию)
* snapshot — имя или id снимка (last по умолчанию)


Также, для корректного получения необходимого проекта, должен быть указан пользователь, у которого есть доступ к этому проекту.
Также, для корректного получения необходимого проекта, должен быть указан пользователь, у которого есть доступ к этому проекту.


Пример команды для генерации файла SARIF из данных с сервера:
Пример команды для генерации файла SARIF из данных с сервера:


     ./svacer sarif -o <path_to_result_file> --from-server --user <user> --password <password> --project <project_name>
     ./svacer sarif -o <path_to_result_file> --from-server --user <user> --password <password> --project <project_name>


=== Загрузка на сервер из SARIF ===
=== Загрузка на сервер из SARIF ===
Line 54: Line 46:
* skip-source — пропускать исходный код файлов с предупреждениями
* skip-source — пропускать исходный код файлов с предупреждениями
* path-prefix — заменять префиксы в названии файлов (prefix:replacement)
* path-prefix — заменять префиксы в названии файлов (prefix:replacement)


Пример команды для загрузки на сервер:
Пример команды для загрузки на сервер:


     ./svacer sarif upload -r <input_file>
     ./svacer sarif upload -r <input_file>

Revision as of 18:13, 11 January 2023

Работа с 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

Пример команды для генерации файла 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>