Как читать авторский курс и нормативные материалы
Это учебные материалы, а не заключение о соответствии конкретного продукта. Организационные модели курса отделяйте от терминов стандарта: ППК в опубликованном проекте — машиночитаемый перечень, а живой реестр его версий является практикой сопровождения. Термин OSA в разных материалах имеет разный охват. Статус и обязательность нормативного документа проверяются отдельно; проект КАПО опубликован как проект первой редакции.
bomctl
Для чего
bomctl — не генератор, а инструмент управления уже существующими SBOM: их получение, хранение в локальном кеше, объединение, фильтрация, экспорт и операции над графом нескольких документов. Он работает поверх форматов SPDX и CycloneDX, опираясь на нейтральную модель protobom, и закрывает задачу «у нас десятки SBOM от разных команд — как ими оперировать как набором».
Менеджер для самих SBOM bomctl не генерирует состав — он оперирует уже готовыми документами: импорт в локальный кеш, объединение, фильтрация, экспорт. На входе нужен результат Syft/cdxgen/Trivy; bomctl превращает россыпь файлов в управляемый набор.
Как применяют
Загрузка SBOM в локальный кеш, просмотр и экспорт:
bomctl import sbom.cdx.json
bomctl list
bomctl export <document-id> -f cyclonedx -o merged.cdx.json
bomctl адресует документы по их идентификатору, умеет вытягивать SBOM по ссылке/из реестра, сшивать внешние ссылки между документами и выгружать результат в выбранном формате — то есть выступает «менеджером пакетов для самих SBOM».
Сильные стороны
- Format-agnostic за счёт protobom: одинаково работает с SPDX и CycloneDX.
- Локальный кеш и операции над набором документов — удобно для портфеля SBOM Организации.
- Объединение и фильтрация SBOM без ручного редактирования JSON.
- Подтягивает связанные внешние SBOM по ссылкам, помогая собрать полную картину состава.
Ограничения
- Сам SBOM не генерирует — нужен на входе результат Syft/cdxgen/Trivy и т.п.
- Проект относительно молодой, набор операций и стабильность интерфейса ещё развиваются.
- Конвертация между форматами наследует lossy-ограничения базовой модели.
Offline / on-premise
Источник SBOM — внутренний реестр Сеть нужна bomctl только при вытягивании документов по внешним ссылкам. В закрытом контуре источником делают внутреннее хранилище/реестр SBOM Организации, и внешний доступ не требуется.
Операции над локальным кешем (импорт, list, merge, export) полностью офлайн. Сеть нужна только при вытягивании SBOM по внешним ссылкам — в закрытом контуре источником служит внутренний реестр/хранилище SBOM, и тогда внешний доступ не требуется.
Связанные темы
М05 Инструменты генерации SBOM · М10 Много исполнителей · П28. Поставка от нескольких исполнителей · П08. Dependency-Track как портфель SBOM · protobom · GUAC · OWASP Dependency-Track