Как читать авторский курс и нормативные материалы
Это учебные материалы, а не заключение о соответствии конкретного продукта. Организационные модели курса отделяйте от терминов стандарта: ППК в опубликованном проекте — машиночитаемый перечень, а живой реестр его версий является практикой сопровождения. Термин OSA в разных материалах имеет разный охват. Статус и обязательность нормативного документа проверяются отдельно; проект КАПО опубликован как проект первой редакции.
BSI TR-03183-2 v2.1.0
О документе
Техническое руководство BSI (Федеральное ведомство по информационной безопасности Германии) — часть 2 серии TR-03183 «Cyber Resilience Requirements for Manufacturers and Products», посвящённая SBOM. Германия входит в ЕС, поэтому юрисдикционно документ относится к ЕС; по сути это национальная детализация требований SBOM под EU CRA. Версия 2.1.0 — самый строгий из распространённых SBOM-профилей: она не ограничивается перечнем полей, а жёстко фиксирует допустимые форматы, версии, набор обязательных полей на уровне документа и компонента и вводит понятия виртуальных и referenced-компонентов с собственной CycloneDX-таксономией.
Ключевые требования
- Допустимые форматы строго версионированы: CycloneDX версии 1.6 или выше, либо SPDX версии 3.0.1 или выше; другие/более старые версии не считаются соответствующими.
- Обязательные поля документа: контактные данные создателя SBOM (Creator) и временная метка генерации (Timestamp).
- Обязательные поля компонента: Component Creator (контакт), Component Name, Component Version, Filename и связи зависимостей с другими компонентами.
- Лицензии — только по SPDX: лицензия указывается валидным SPDX license identifier или выражением на их основе; произвольный текст не допускается.
- Виртуальные и referenced компоненты: введены для случаев, когда компонент не поставляется напрямую, но влияет на состав; для CycloneDX BSI ведёт собственный namespace и опубликованную property-таксономию.
Что считать evidence
- SBOM, прошедший проверку на соответствие версии формата: CycloneDX
specVersion≥ 1.6 либо SPDX версии ≥ 3.0.1 (отчёт валидатора). - Отчёт о покрытии обязательных полей компонента (Creator/Name/Version/Filename) и наличии document-level Creator и Timestamp.
- Отчёт о лицензиях: доля компонентов с валидным SPDX-идентификатором; список компонентов с невалидным/произвольным license-полем как worklist.
- Корректные
purlи нормализованные идентификаторы; обработка виртуальных/referenced-компонентов по BSI-таксономии. - Результат прогона чек-листов качества CycloneDX/SPDX по требованиям TR-03183-2 как сводный evidence соответствия.
Маппинг на практики и шаблоны
- П02. Чтение CycloneDX JSON руками — где в документе лежат обязательные поля и
specVersion. - П24. PURL нормализация и private qualifiers, П25. CPE alias worklist — корректность идентификаторов компонентов.
- П26. Лицензионная классификация, П11. ScanCode для лицензий — приведение лицензий к SPDX-идентификаторам.
- П34. SBOM quality gate, Чек-лист качества CycloneDX, Чек-лист качества SPDX — проверка версий и полей.
- Модули: Модуль М03 (форматы SBOM), Модуль М13 (трассировка и evidence).
- Контекст: EU Cyber Resilience Act, форматы CycloneDX и SPDX.
Ограничение
Это учебная карточка, а не официальный текст. Точные версии форматов, перечень обязательных полей и определения виртуальных/referenced-компонентов сверяйте с официальным BSI TR-03183-2 v2.1.0 и опубликованной BSI CycloneDX-таксономией.