Документация / Руководство администратора / Интеграции
DefectDojo
Интеграция забирает уязвимости из DefectDojo по API и отправляет обратно изменения, сделанные в Core. Платной лицензии она не требует.
Раздел: "Глобальные настройки" → "Интеграции" → "DefectDojo". Настраивает роль с правом "Глобальные настройки": "Изменение".
Развёртывание
Опрос DefectDojo и обратную синхронизацию выполняет служебный сервис dojo_helper. Его разворачивает по запросу команда SecurityFlow.
Как работает
dojo_helperопрашивает DefectDojo с заданной частотой и загружает уязвимости порциями.- У продукта и уязвимости Core сохраняются идентификаторы объектов DefectDojo. По ним в карточке уязвимости строится "Ссылка DefectDojo":
<URL хоста>finding/<id>. - Изменения в Core по уязвимостям из DefectDojo Core передаёт
dojo_helperдля отправки в DefectDojo. - Сетевой поток: от
dojo_helperк DefectDojo по HTTP(S) на "URL хоста".
Поля
| Поле | Что задаёт | По умолчанию |
|---|---|---|
| "Включить интеграцию" | запуск импорта и обратной синхронизации | выключено |
| "URL хоста" | адрес DefectDojo, например https://dojo.example.ru/; косую черту в конце Core добавит сам |
- |
| "Токен аутентификации API" | API-токен пользователя DefectDojo; хранится зашифрованным | - |
| "Частота запросов (в минутах)" | как часто опрашивать DefectDojo, не меньше 1 | 15 |
| "Шаг загрузки уязвимостей" | сколько уязвимостей загружать за один запрос, не меньше 1 | 1000 |
| "Самоподписанный SSL" | отключает проверку TLS-сертификата DefectDojo | выключено |
Включить интеграцию без "URL хоста" и "Токена аутентификации API" нельзя. Интеграция с DefectDojo на установку Core одна.
Настройка
- В DefectDojo создайте пользователя для интеграции и получите его API-токен.
- Убедитесь, что сервис
dojo_helperразвёрнут и видит DefectDojo по сети. - В Core откройте "Глобальные настройки" → "Интеграции" → "DefectDojo".
- Заполните "URL хоста" и "Токен аутентификации API".
- Задайте "Частоту запросов" и "Шаг загрузки уязвимостей".
- Включите "Включить интеграцию" и сохраните.
Обратная синхронизация
Пока интеграция включена, Core ставит задачу для dojo_helper на каждое из этих действий по уязвимостям с идентификатором DefectDojo:
| Действие в Core | Событие в DefectDojo |
|---|---|
| статус "В работе" | verified |
| статус "Решено" | mitigated |
| статус "Отклонено" | set-false-positive |
| возврат в "Не обработано" | unset-false-positive |
| смена критичности | severity-changed |
| удаление уязвимости | удаление в DefectDojo |
Принятие риска и статус "Назначено" в DefectDojo не передаются.
Переезд с DefectDojo
Сканирование переводите на Radar и импорт отчётов в Core: Как работает Radar, Загрузка отчётов из CI.
Уязвимости с идентификатором DefectDojo в списке уязвимостей отбирает фильтр "Источник уязвимости", в правилах автоматики - условие "Источник импорта".