Автоматизация устранения уязвимостей с помощью Atlassian Rovo Dev и Ключ-АСТРОМ
Автоматизация устранения уязвимостей с помощью Atlassian Rovo Dev и Ключ-АСТРОМ
Предварительная версия
Обзор
Ключ-АСТРОМ помогает командам разработки сосредоточиться на главном, проверяя уязвимости с учётом контекста среды выполнения и оптимизируя устранение через Atlassian Rovo Dev. Этот сценарий демонстрирует, как приоритизировать и устранять уязвимости, влияющие на продуктивные приложения, с бесшовной интеграцией с Jira для управления тикетами и Bitbucket для создания pull request. Поддерживаются два пути реализации в зависимости от того, где вы хотите выполнять сортировку и запускать исправления — оба основаны на Ключ-АСТРОМ MCP и интеграциях Atlassian.
Задача
Сканеры уязвимостей обнаруживают сотни высоких и критических CVE в зависимостях приложений, но им не хватает контекста среды выполнения. Не зная, какие библиотеки фактически загружены или какие пути кода выполняются в продуктивной среде, разработчики сталкиваются с трудным выбором: пытаться исправить каждую уязвимость, тратя ценное время на проблемы, не влияющие на продуктив, или приоритизировать наугад и рисковать пропустить уязвимости, которые действительно затрагивают критически важные для бизнеса сервисы.
Это отсутствие контекста создаёт усталость от оповещений и замедляет устранение. Командам нужен способ сосредоточиться на уязвимостях, которые подтверждённо влияют на продуктив, уверенно откладывая те, что не представляют реального риска.
Решение
Ключ-АСТРОМ интегрируется с Atlassian Rovo Dev через Model Context Protocol (MCP), обогащая опыт разработчика контекстом среды выполнения и валидацией Аналитики уязвимостей среды выполнения (RVA). Это позволяет Rovo Dev предпринимать целевые действия прямо из IDE:
- Подтверждённые уязвимости приоритизируются для устранения: Rovo Dev запрашивает у Ключ-АСТРОМ уязвимости, подтверждённые в среде выполнения, гарантируя, что разработчики сосредоточены на проблемах, которые действительно влияют на продуктив.
- Интеллектуальное управление тикетами: Rovo Dev создаёт тикеты Jira для подтверждённых обнаружений, автоматически проверяя наличие дубликатов перед созданием, и обновляет тикеты по мере устранения.
- Сквозной рабочий процесс устранения: от обнаружения уязвимости до исправления кода, создания pull request и обновления тикета — всё без выхода из IDE.
Это снижает шум и усилия разработчиков, гарантируя устранение только relevant уязвимостей, сохраняя полную прослеживаемость в Jira.
Вы можете реализовать это решение двумя способами в зависимости от того, где вы хотите сортировать уязвимости и запускать устранение:
- Рабочий процесс на основе IDE/CLI: использует Rovo Dev в IDE или Rovo Dev CLI в качестве основной точки взаимодействия, подключённой к MCP-серверу Ключ-АСТРОМ. Разработчики взаимодействуют с Rovo Dev для запроса уязвимостей, применения исправлений, создания pull request в Bitbucket и управления тикетами Jira.
- Рабочий процесс, управляемый Ключ-АСТРОМ: использует Рабочие процессы в качестве триггера и движка обработки, с автоматическим созданием тикетов Jira. Затем разработчики используют Rovo Dev для получения тикетов, применения исправлений и завершения цикла устранения.
Предварительные требования
Ниже приведены требования для Atlassian и Ключ-АСТРОМ.
Atlassian
- Имейте доступ к экземпляру Jira Cloud вашей организации.
- Установите расширение Atlassian (VS Code, JetBrains IDEs) в вашей IDE.
- Установите Atlassian Rovo Dev в вашей IDE.
- Создайте токен API Atlassian для аутентификации со следующими разрешениями проекта:
- Просмотр проектов
- Создание проблем
- Редактирование проблем
- Переходы проблем
- Добавление комментариев
- Связывание проблем
- Настройте Bitbucket или любой другой репозиторий Git с доступом на запись в вашей IDE (требуется для того, чтобы Rovo Dev мог фиксировать изменения кода и создавать pull request от вашего имени). Убедитесь, что ИИ-агент имеет разрешения на отправку в ветки и открытие PR.
- Настройте Rovo Dev с интеграциями Jira и Bitbucket.
Ключ-АСТРОМ
- Настройте мониторинг с помощью ЕдиныйАгент для продуктивных сервисов.
- Включите Аналитику уязвимостей среды выполнения.
- Создайте токен платформы Ключ-АСТРОМ со следующими разрешениями:
mcp-gateway:servers:invokemcp-gateway:servers:readdavis-copilot:conversations:executedavis-copilot:nl2dql:executedavis-copilot:dql2nl:executestorage:entities:readstorage:smartscape:readstorage:buckets:readstorage:bucket-definitions:readstorage:security.events:read
Рабочий процесс на основе IDE/CLI
В этом сценарии разработчик взаимодействует с Rovo Dev в своей IDE, чтобы запрашивать у Ключ-АСТРОМ уязвимости, применять исправления и управлять всем жизненным циклом устранения через Jira и Bitbucket.
Как это работает (рабочий процесс на основе IDE)
- Ключ-АСТРОМ обнаруживает уязвимости в продуктивных приложениях через Аналитику уязвимостей среды выполнения.
- Разработчик открывает свою IDE с затронутым репозиторием и вызывает Rovo Dev.
- Разработчик просит Rovo Dev запросить уязвимости для relevant сервиса (например, «Покажи критические уязвимости для сервиса frontend»). Rovo Dev использует MCP-сервер Ключ-АСТРОМ для получения уязвимостей, подтверждённых в среде выполнения.
- Разработчик выбирает уязвимость и запрашивает подробную информацию из Ключ-АСТРОМ.
- Rovo Dev проверяет Jira на наличие существующих тикетов; если их нет, создаёт новый тикет с подробностями уязвимости.
- Разработчик поручает Rovo Dev применить исправление на основе контекста тикета Jira.
- Rovo Dev анализирует кодовую базу, применяет необходимые изменения и запускает тесты.
- Rovo Dev создаёт pull request в Bitbucket с исправлением и связывает его с тикетом Jira.
- Тикет Jira обновляется ссылкой на PR и переводится в статус «На проверке».
- Разработчики проверяют и объединяют pull request.
Начало работы (рабочий процесс на основе IDE)
Чтобы начать, выполните следующие шаги.
Шаг 1. Настройте MCP-сервер Ключ-АСТРОМ
- Запросите доступ к MCP-серверу Ключ-АСТРОМ.
- Настройте MCP-сервер в настройках Rovo Dev вашей IDE, как показано ниже, обязательно заменив:
<ASTROMKEY_TENANT>на вашу среду, напримерmytenant.apps.astromkey.com<ASTROMKEY_PLATFORM_TOKEN>на токен Ключ-АСТРОМ, созданный в разделе «Предварительные требования»
{
"mcpServers": {
"astromkey": {
"transport": "sse",
"url": "https://<ASTROMKEY_TENANT>/platform/mcp-gateway/sse",
"headers": {
"Authorization": "Api-Token <ASTROMKEY_PLATFORM_TOKEN>"
}
}
}
}
Шаг 2. Добавьте пользовательские инструкции для агента Ключ-АСТРОМ
Вы можете предоставить пользовательские инструкции для управления Rovo Dev при взаимодействии с Ключ-АСТРОМ. Скачайте файл instructions.md и настройте его одним из следующих способов:
- Вариант 1: Глобальный файл памяти
- В Rovo Dev нажмите меню (три точки) и выберите Открыть глобальный файл памяти.
- Добавьте содержимое файла
instructions.md, чтобы обеспечить руководство, специфичное для Ключ-АСТРОМ, во всех ваших проектах.
- Вариант 2: Инструкции на уровне репозитория
- Создайте файл
AGENTS.mdв корне вашего репозитория (или папки в контексте). - Добавьте содержимое файла
instructions.md, чтобы обеспечить инструкции агента Ключ-АСТРОМ, специфичные для проекта.
- Создайте файл
Файл инструкций содержит руководство по запросу уязвимостей, интерпретации событий безопасности Ключ-АСТРОМ и следованию лучшим практикам устранения.
Шаг 3. Настройте интеграции Atlassian
- Убедитесь, что Rovo Dev подключён к вашему экземпляру Jira Cloud. Следуйте руководству по настройке Rovo Dev для аутентификации.
- Подключите Rovo Dev к вашему репозиторию Bitbucket для создания pull request. Вы можете использовать расширение Atlassian VSC для аутентификации.
- Клонируйте затронутый репозиторий локально и откройте его в вашей IDE.
Шаг 4. Взаимодействуйте с Rovo Dev
Используйте запросы на естественном языке для управления рабочим процессом:
- Запрос уязвимостей:
Покажи все критические уязвимости из Ключ-АСТРОМ
- Получение сведений об уязвимости:
Получи сведения об [этой] уязвимости из Ключ-АСТРОМ
- Создание тикета Jira (с проверкой на дубликаты):
Создай тикет Jira для этой уязвимости, но только если уже нет существующего тикета
- Применение исправлений на основе контекста тикета:
На основе контекста тикета Jira проанализируй мою кодовую базу и примени необходимые исправления для этой уязвимости
- Создание pull request:
Создай pull request для этого исправления в ветку main
- Обновление тикета Jira:
Обнови тикет Jira ссылкой на PR и переведи его в статус «На проверке»
Рабочий процесс, управляемый Ключ-АСТРОМ
В этом сценарии используются Рабочие процессы для автоматической сортировки уязвимостей и создания тикетов Jira, при этом Rovo Dev выполняет этап устранения.
Как это работает (сортировка, управляемая Ключ-АСТРОМ)
- Ключ-АСТРОМ обнаруживает уязвимости через Аналитику уязвимостей среды выполнения.
- Рабочий процесс Ключ-АСТРОМ запускается по настроенному расписанию для выявления новых критических уязвимостей, подтверждённых в среде выполнения.
- Рабочий процесс использует Ключ-АСТРОМ Intelligence для суммирования обнаружений и автоматически создаёт тикеты Jira для подтверждённых уязвимостей.
- Разработчик получает уведомление о тикете Jira и открывает затронутый репозиторий в своей IDE.
- Разработчик загружает тикет Jira как контекст, выбирая его в расширении Atlassian, что предоставляет полные сведения об уязвимости.
- При необходимости разработчик может получить дополнительный контекст наблюдаемости, используя настроенный MCP-сервер Ключ-АСТРОМ.
- Разработчик поручает Rovo Dev применить исправление, создать pull request в Bitbucket и обновить тикет.
- Разработчики проверяют и объединяют pull request.
Начало работы (рабочий процесс, управляемый Ключ-АСТРОМ)
Чтобы начать, выполните следующие шаги.
Шаг 1. Разверните рабочий процесс Ключ-АСТРОМ
Скачайте и разверните рабочий процесс Ключ-АСТРОМ.
Шаг 2. Настройте Rovo Dev
- Убедитесь, что Rovo Dev подключён к вашему экземпляру Jira Cloud. Следуйте руководству по настройке Rovo Dev для аутентификации.
- Подключите Rovo Dev к вашему репозиторию Bitbucket для создания pull request. Вы можете использовать расширение Atlassian VSC для аутентификации.
- Клонируйте затронутый репозиторий локально и откройте его в вашей IDE.
Шаг 3. Устранение из контекста Jira
Когда назначен тикет Jira:
- Откройте затронутый репозиторий в вашей IDE.
- Загрузите тикет Jira как контекст в Rovo Dev.
- Используйте естественный язык для управления устранением:
На основе контекста тикета Jira примени исправление для этой уязвимости, создай PR и обнови тикет
Дополнительные сценарии использования
MCP-сервер Ключ-АСТРОМ предоставляет дополнительные инструменты, которые может использовать Rovo Dev, обеспечивая дополнительные сценарии, такие как:
- Реагирование на инциденты: запрос активных проблем из Ключ-АСТРОМ, получение анализа первопричин и создание тикетов инцидентов в Jira с полным контекстом наблюдаемости.
- Оптимизация производительности: получение данных о медленных транзакциях, сведений о запросах к базе данных и зависимостях сервисов для обоснования усилий по оптимизации.
- Планирование мощностей: использование прогнозирования временных рядов для прогнозирования использования ресурсов и создания проактивных тикетов о мощностях.
- Контекст наблюдаемости для существующих тикетов: для любого тикета Jira запрос в Ключ-АСТРОМ related логов, трассировок, метрик и связей сущностей для ускорения диагностики.