Пиков / КАПО
Как читать авторский курс и нормативные материалы

Это учебные материалы, а не заключение о соответствии конкретного продукта. Организационные модели курса отделяйте от терминов стандарта: ППК в опубликованном проекте — машиночитаемый перечень, а живой реестр его версий является практикой сопровождения. Термин OSA в разных материалах имеет разный охват. Статус и обязательность нормативного документа проверяются отдельно; проект КАПО опубликован как проект первой редакции.

План занятия (90 минут)

Цели занятия

Материалы

Тайминг и ход занятия

Мин Блок Формат Содержание
0–8 Вводный кейс разбор «Заказчик прислал SWID-теги и назвал это SBOM» — почему это не проходит по BSI.
8–25 Теория: назначение форматов лекция CycloneDX (безопасность/VEX) vs SPDX (лицензии/граф provenance) vs SWID (инвентаризация). Версии BSI: 1.6 / 3.0.1.
25–40 Модель данных лекция + доска component+type в CDX против графа Package/File+Relationship в SPDX; три категории лицензий; bsi:component:*.
40–60 Демо: один компонент в двух форматах демонстрация jq по CDX и SPDX: достаём creator, version, hash, licenses, purl/swid. Показ потерь при конвертации.
60–82 ПЗ в парах практика По ПЗ М03: проверить обязательные поля компонента (BSI 5.2.2), заполнить таблицу.
82–90 Рефлексия обсуждение Какой формат закрепить в Организации под какую задачу; что записать в Соглашение о качестве данных SBOM.

Демонстрация (опорные команды)

# CycloneDX 1.6: спецверсия и обязательные поля компонента
jq '.specVersion' bom.cdx.json
jq '.components[0] | {name, version, purl, hashes, licenses}' bom.cdx.json
# SPDX 3.0.1: версия профиля и пакет
jq '.creationInfo.specVersion // ."@graph"[]?.type' bom.spdx.json

Контрольная точка

Слушатель устно отвечает: (1) является ли SWID форматом SBOM по BSI и почему; (2) какие минимальные версии CycloneDX и SPDX требует BSI; (3) одно поле компонента, которое нет нативно ни в одном формате и кодируется через bsi:component:*.

Связи

Опирается на М02, ведёт в М05 и М07.