Обзор CI/CD для Codex Security
Выберите интеграцию с CI, подготовьте доступ для сканирования и определите, как результаты и охват сканирования будут влиять на ваш конвейер.
Запускайте Codex Security в CI, чтобы проверять изменения в pull request или merge request, сканировать ветку по умолчанию и сохранять сведения о выявленных проблемах и охвате. Порядок работы, обработку отчётов и варианты применения политик см. в руководстве для вашего провайдера CI.
Подготовка рабочего процесса
Для запуска сканирования требуется доступ к Codex Security. Сохраните OpenAI API key в
хранилище секретов вашего провайдера CI под именем CODEX_SECURITY_API_KEY, затем передайте его
процессу сканирования через переменную окружения OPENAI_API_KEY.
Запускайте сканирование только для репозиториев и изменений, которым вы доверяете. Сканирование использует локальные разрешения раннера и не приостанавливается для подтверждения. Храните посторонние учётные данные и выполняйте шаги развёртывания в отдельных заданиях.
Используйте одобренную модель Daybreak
Для доступа к Daybreak Blue через Trusted Access for
Cyber задайте для входного параметра GitHub Action
model значение gpt-6-sol, а для cyber-access-program —
daybreak_blue. Для сканирования напрямую через CLI используйте --model gpt-6-sol
и --cyber-access-program daybreak_blue.
Используйте API key проекта, в котором включён Daybreak Blue и есть доступ к выбранной модели. Указание модели или программы не предоставляет доступ. Настройки Action см. в разделе Настройка дополнительного доступа к Daybreak.
Выберите интеграцию
Добавьте рабочий процесс GitHub Actions
Используйте руководство по GitHub Actions для проверки pull request и сканирования репозитория по расписанию. Codex Security Action устанавливает CLI, сохраняет отчёты и добавляет сводку задания и аннотации к исходному коду. Руководство описывает настройку раннера, дополнительный доступ к Daybreak, загрузку SARIF и применение порога серьёзности.
Добавьте конвейер GitLab CI/CD
Используйте руководство по GitLab CI/CD для сканирования merge request, ветки по умолчанию и запуска по расписанию. Начните с конвейера, который только сканирует, затем добавьте обработку отчётов, применение политик и при необходимости проверяемое устранение проблем.
Используйте другую систему CI
Установите общедоступный пакет @openai/codex-security и запускайте CLI напрямую.
Используйте --auth api-key, выберите сканирование репозитория или изменений и сохраняйте результаты в
закрытом каталоге вне рабочего дерева Git. На раннере должны быть доступны
зависимости, описанные в кратком руководстве по CLI.
Параметры сканирования, ревизии для сравнения изменений, форматы отчётов, каталоги состояния и результатов, а также поведение повторных попыток см. в справочнике CLI.
Выбор политики уровней серьезности
Начните с результатов в рекомендательном режиме. Изучите типичные выявленные проблемы, охват сканирования, стоимость и время выполнения, прежде чем решать, какие результаты должны блокировать слияние.
Оценивайте и выявленные проблемы, и полноту сканирования. Политика серьёзности учитывает проблемы из текущего сканирования с уровнем не ниже заданного порога. Ранее выявленные незакрытые проблемы в сводке репозитория не влияют на эту политику. Неполное сканирование может оставить отдельные области без проверки, даже если оно не сообщает о выявленных проблемах.
В выпуске Action action-v0.3.0 завершённое сканирование означает, что настроенный анализ
дал корректный результат. Исключения из области проверки, отложенные исследования и другие
примечания об охвате не позволяют обойти политику серьёзности. Ошибки сканера и обязательного
формирования отчётов приводят к сбою задания. CLI 0.3.0 возвращает код выхода 2 при ошибках входных данных,
выполнения, целостности результата или обязательных выходных данных. При оценке результата изучите coverage.json; завершение
не гарантирует, что найдены все уязвимости.
Настройте применение политики по руководству по GitHub Actions или руководству по GitLab CI/CD. Для прямых интеграций с CLI см. раздел Применение порога серьёзности и коды выхода.