이 문서에서는 SBOM 개념을 소개하고 소프트웨어 공급망의 종속 항목을 이해하는 데 도움이 되는 Artifact Analysis 기능을 간략히 설명합니다.
Artifact Registry에 컨테이너 이미지를 저장할 때 해당 이미지의 콘텐츠를 설명하는 소프트웨어 재료명세서 (SBOM)를 만들 수 있습니다. 소프트웨어의 종속 항목을 알면 보안 상태를 개선하는 데 도움이 됩니다. SBOM은 행정 명령 (EO) 14028과 같은 보안 규정을 준수하기 위해 소프트웨어 구성을 증명하는 데도 도움이 됩니다.
SBOM
SBOM은 소프트웨어에서 사용하는 패키지를 식별하는 애플리케이션의 기계 판독 가능 인벤토리입니다. 이러한 콘텐츠에는 공급업체의 서드 파티 소프트웨어, 내부 아티팩트, 오픈소스 라이브러리가 포함될 수 있습니다.
Artifact Analysis를 사용하면 SBOM을 생성하거나 자체 SBOM을 업로드할 수 있습니다.
Artifact Analysis로 SBOM을 생성하거나 자체 SBOM을 업로드하든 관계없이 Artifact Analysis는 일관된 저장소 및 검색 프로세스를 제공하여 모든 종속 항목 정보를 한곳에서 조정하고 평가할 수 있도록 지원합니다.
SBOM 형식
Artifact Analysis는 Software Package Data Exchange (SPDX) 2.3 형식의 SBOM을 생성합니다.
Google Cloud 외부에서 기존 SBOM을 업로드하려는 경우 추가 형식이 지원됩니다. SBOM 업로드를 참고하세요.
SBOM 저장소
아티팩트 분석은 Google Cloud 프로젝트의 Cloud Storage에 SBOM을 저장합니다. SBOM 객체를 삭제하거나 버킷을 삭제하지 않는 한 SBOM은 Cloud Storage에 계속 저장됩니다. 가격 책정에 대한 자세한 내용은 Cloud Storage 가격 책정을 참고하세요.
지원되는 패키지 유형
SBOM은 아티팩트 분석 스캔으로 식별할 수 있는 모든 패키지의 목록을 제공합니다. 패키지는 컨테이너화되어야 하며 Artifact Registry의 Docker 저장소에 저장되어야 합니다.
아티팩트 분석은 다음과 같은 패키지 유형을 지원합니다.
- OS
- Java (Maven)
- Go
- Python
- Node.js (npm)
SBOM 참조 발생 횟수
Artifact Analysis는 컨테이너별 SBOM 외에도 다음 정보가 포함된 Grafeas SBOM 참조 발생을 생성합니다.
- SBOM의 Cloud Storage 위치
- SBOM의 해시
SbomReferenceIntotoPayload
에 서명
서명을 사용하여 SBOM이 Artifact Analysis에서 생성되었는지 확인할 수 있습니다.
서명은 페이로드 유형 application/vnd.in-toto+json
으로 DSSE 서명 프로토콜을 사용합니다.페이로드는 SbomReferenceIntotoPayload
의 JSON 형식 값입니다.
패키지 발생 횟수
아티팩트 분석은 더 많은 종속 항목 정보를 제공하기 위해 설치된 각 패키지에 대해 Grafeas 패키지 발생도 생성합니다. 패키지 발생에는 다음 정보가 포함됩니다.
- 패키지 버전
- 패키지 유형
- 설치된 패키지의 라이선스 정보
제한사항
- 설치된 패키지 추적은 Artifact Registry에 푸시되고 Container Scanning API로 평가된 컨테이너 이미지에만 지원됩니다. 또한 설치된 패키지를 기반으로 하는 gcloud CLI 조회는 설치된 패키지가 이러한 이미지에서만 추적되므로 Artifact Registry에 저장된 이미지에서만 작동합니다.
- Container Registry (지원 중단됨) 저장소는 지원되지 않습니다. Container Registry에서 전환하는 방법을 알아봅니다.