Замена сканера
- Обследование и выбор сканеров
- Параллельный запуск и настройка правил
- Перенос разметки и порогов
- Переключение конвейеров
Сменить сканер несложно. Сложно не потерять то, что команда накопила вокруг него: правила, пороги качества, разобранные срабатывания и принятые риски. Переносим это на отечественные AppSec.Wave и AppSec.Track или на открытые сканеры.
Сменить сканер просто — сложно не потерять разметку срабатываний, правила и пороги качества.
Запускаем новый сканер параллельно со старым, переносим правила, разметку и пороги.
Проверки в каждом merge request работают с первого дня, история решений сохранена.
Если лицензию Snyk или SonarQube продлить нельзя или невыгодно, первая мысль — поставить другой сканер. Через неделю команда тонет в тысячах «новых» срабатываний, которые на старом инструменте давно разобраны, а пороги качества в конвейере либо всё блокируют, либо ничего не ловят.
Мы делаем переход так, чтобы проверки в конвейере продолжали работать с первого дня, а история решений по срабатываниям не пропала.
AppSec.Wave — отечественный статический анализатор. Или открытые анализаторы, если подходят под ваши языки.
AppSec.Track — анализ компонентов с открытым кодом и генерация SBOM. Или открытые сканеры зависимостей. Допуск новых компонентов в сборки →
AppSec.Hub сводит находки разных сканеров в одно место — по желанию.
Выбор зависит от языков, объёма кода и требований к сертифицированным средствам. Подбираем на обследовании. Продукты AppSec →
Что накоплено вокруг старого сканера и куда это переезжает.
Импорт разметки из других сканеров в документации AppSec.Wave и AppSec.Track не описан. Поэтому разобранные срабатывания выгружаем из старого сканера в таблицу и по ней размечаем совпадающие срабатывания в новом. Что не удалось сопоставить, отмечаем в таблице явно.
Языки, проекты, правила, пороги, объём разобранных срабатываний. Выбираем новые сканеры.
Новый сканер работает рядом со старым на нескольких проектах. Сравниваем результаты, настраиваем правила.
Переносим разметку и пороги, переключаем конвейеры всех проектов.
Документация, обучение команды, архив отчётов старого сканера.
Порядок всегда один. Сколько займёт каждый шаг, зависит от объёма: замеры на первом шаге задают цену и сроки.
Не всегда один в один: у разных анализаторов разные правила. Поэтому сначала запускаем их параллельно и показываем, что новый находит, а что нет, — до отключения старого.
Можно, если её возможностей хватает. Тогда добавим недостающие проверки — например, анализ зависимостей — рядом с ней.
В вашей инфраструктуре. Сканеры устанавливаются на ваши серверы, код наружу не уходит.
Какой сканер, сколько проектов и на каких языках, насколько глубоко он встроен в конвейеры. Ответим с планом и сроками.