IBM Cloud Docs
소프트웨어 자재 명세서

소프트웨어 자재 명세서

SBOM(소프트웨어 자재 명세서)은 소프트웨어 애플리케이션의 모든 구성 요소, 종속성 및 라이선스에 대한 구조화된 인벤토리입니다. 구성 요소 이름, 버전, 라이선스, 취약성 및 종속성을 포함한 자세한 메타데이터를 제공하여 조직이 보안, 규정 준수 및 위험 관리를 위해 오픈 소스 및 타사 소프트웨어를 추적하는 데 도움을 줍니다.

SBOM을 표준화된 형식(SPDX, CycloneDX )으로 쉽게 내보내고 타사 SBOM을 가져오면서 VEX 데이터를 사용하여 정부 및 고객 요구 사항을 충족할 수 있습니다.

파이프라인을 실행하는 동안 SBOM을 생성하는 데 사용되는 특정 도구가 있습니다. 현재 SBOM을 생성하는 데 사용할 수 있는 도구는 다음과 같습니다:

패키지 SBOM이란 무엇인가요?

패키지 SBOM은 소프트웨어 프로젝트에 사용되는 모든 패키지에 대한 모든 정보를 자세히 설명합니다. 사용된 각 패키지의 버전, 라이선스 및 취약성에 대한 정보를 제공합니다. 패키지 SBOM은 마이크로서비스 수준에서 생성되며, 아키텍처의 각 마이크로서비스에 대해 SBOM이 생성됩니다.

SBOM 수명 주기

SBOM 라이프사이클은 마이크로서비스 배포의 모든 단계(CI, CD, CC 파이프라인 실행)에 걸쳐 있습니다.

  • 지속적 통합(CI) 파이프라인 - CI 파이프라인이 실행되는 동안 빌드된 각 마이크로서비스에 대해 SBOM이 생성됩니다.
  • 지속적 배포(CD) 파이프라인 - CD 파이프라인이 실행되는 동안 배포된 모든 마이크로서비스에 대해 릴리스 SBOM이 생성됩니다.
  • 지속적인 규정 준수(CC) 파이프라인 - CD 파이프라인 실행이 완료된 후 CC 파이프라인은 배포된 애플리케이션을 지속적으로 모니터링합니다. CC 파이프라인을 실행하는 동안 CI 파이프라인의 각 마이크로서비스에 대해 생성된 SBOM이 검색 및 스캔됩니다.

SBOM의 수명 주기
SBOM의 수명 주기

지속적 통합 파이프라인의 SBOM 수명 주기

지속적 통합 파이프라인은 애플리케이션 리포지토리에서 배포 가능한 아티팩트를 빌드합니다.

CI 파이프라인이 code-compliance-checks 단계에서 실행되면 CRA가 실행되어 배포된 아티팩트가 생성되는 리포지토리에 대한 패키지 SBOM을 생성합니다. 이 패키지 SBOM에는 CI 파이프라인에서 빌드 중인 각 마이크로서비스에서 사용하는 패키지에 대한 정보가 포함되어 있습니다. 각 패키지의 라이선스, 버전 및 취약성에 대한 정보를 제공합니다.

이 패키지 SBOM은 프로덕션에 배포하는 동안 나중에 사용할 수 있도록 파이프라인의 증거 보관함에 저장됩니다.

지속적 배포 파이프라인의 SBOM 수명 주기

지속적 배포 파이프라인은 모든 증거를 수집하고 변경 요청 요약 콘텐츠를 생성합니다.

CD 파이프라인을 통해 프로덕션에 배포할 때 증거 보관함에 저장된 패키지 SBOM을 가져옵니다. 이러한 SBOM을 집계하여 릴리스 SBOM을 구성합니다. 릴리스 SBOM은 변경 요청에 첨부 파일로 추가됩니다.

지속적인 규정 준수 파이프라인의 SBOM 수명 주기

지속적인 규정 준수 파이프라인은 배포된 아티팩트와 해당 소스 리포지토리의 취약점을 프로덕션에 배포한 후 주기적으로 스캔합니다.

CC 파이프라인이 실행되면 증거 보관함에서 CI 파이프라인 실행 중에 생성된 이전에 저장된 패키지 SBOM을 검색합니다. CC 파이프라인은 패키지 SBOM을 다시 생성하지 않습니다.

SBOM 유효성 검사를 위한 SBOM 유틸리티

파이프라인이 실행되면 com.ibm.code_bom_check 증거에 standardcyclonedx 형식의 첨부 파일로 SBOM 이 추가됩니다.

sbom-utility 도구는 일련의 기본 및 사용자 지정 검사를 완료하여 메타데이터가 포함되어 있는지 확인함으로써 SBOM의 유효성을 검사합니다:

  • 데이터를 포함하는 SBOM의 루트 레벨에 있는 컴포넌트입니다
  • 타임스탬프
  • 각 구성 요소 필드에 대한 namebom-ref

SBOM 검증을 위한 증거를 수집하려면 sbom-validation-collect-evidence1 으로 설정합니다. 증거는 증거 유형 및 도구 유형을 sbom-utility 으로 지정하여 com.ibm.code_bom_check 에 첨부 파일로 수집합니다.

자세한 내용은 sbom-utility 도구 문서를 참조하세요.