프로젝트의 SBOM 문서 가져오기

circle-info

기능 가용성\n이 기능은 Snyk 엔터프라이즈(Enterprise) 플랜 고객에게 제공됩니다.

Snyk은 지속적으로 모니터링되는 오픈소스 및 컨테이너 프로젝트에 대한 SBOM 문서를 생성할 수 있는 프로젝트의 SBOM 문서 가져오기 엔드포인트를 제공합니다.

SBOM 문서는 프로젝트 종속성 및 그 관계의 최신 상태를 나타냅니다.

SBOM 문서는 CycloneDXarrow-up-right v1.4, v1.5, v1.6 (JSON, XML) 및 SPDXarrow-up-right v2.3 (JSON) 형식으로 생성할 수 있습니다.

프로젝트의 SBOM 생성 방법

  1. Snyk 웹 UI에서 조직 ID(organization ID) (UUID 형식), 프로젝트 ID(project ID) (UUID), 그리고 API 키를 가져옵니다.\n 이러한 값을 찾는 데 도움이 필요한 경우, 그룹 및 조직 간 전환, 프로젝트 설정 보기 및 편집, 그리고 API 인증을 참조하십시오.

  2. 생성할 SBOM의 형식을 결정합니다.\n 사용 가능한 옵션은 CycloneDX 1.4 JSON (cyclonedx1.4+json), CycloneDX 1.4 XML (cyclonedx1.4+xml), CycloneDX 1.5 JSON (cyclonedx1.5+json), CycloneDX 1.5 XML (cyclonedx1.5+xml), CycloneDX 1.6 JSON (cyclonedx1.6+json), CycloneDX 1.6 XML (cyclonedx1.6+xml) 또는 SPDX v2.3 JSON (spdx2.3+json)입니다.

  3. Postman 또는 curl과 같은 HTTP 클라이언트를 사용하여 최신 안정 버전을 지정하여 엔드포인트에 요청을 보냅니다.\n format 매개변수는 반드시 URL 인코딩되어야 합니다.\n 예: CycloneDX 1.4 JSON 문서를 검색하려면 쿼리에 format=cyclonedx1.4%2Bjson을 설정합니다. 예제에는 버전에 대한 플레이스홀더가 있습니다. 2024-08-22 또는 그 이후 버전을 사용하십시오.

$ curl --location 'https://api.snyk.io/rest/orgs/<ORG_ID>/projects/<PROJECT_ID>/sbom?version=yyyy-mm-dd&format=<SBOM_FORMAT>' --header 'Authorization: token <SNYK_API_TOKEN>'

사용자 정의 CycloneDX 속성

Snyk에서 생성된 SBOM 문서에는 내보낸 내용에 대한 Snyk 관련 메타데이터가 포함됩니다. 이는 CycloneDX로 내보낼 때 문서의 metadata.properties 섹션에 포함됩니다.

속성 이름 (Property Name)
설명 (Description)

snyk:org_id

조직 ID (UUID), 해당되는 경우

snyk:collection_id

프로젝트 컬렉션 ID (UUID), 해당되는 경우

snyk:project_id

프로젝트 ID (UUID), 해당되는 경우

snyk:target_id

대상 ID (UUID), 해당되는 경우

프로젝트의 SBOM 문서 가져오기 엔드포인트 문제 해결

다음 응답 코드는 성공을 나타냅니다.

200 OK

SBOM 문서가 성공적으로 생성되었습니다. 응답 본문에는 요청된 형식의 문서가 포함되어 있습니다.

다음은 API를 사용할 때 발생할 수 있는 오류 상태입니다. 여기에 언급되지 않은 문제가 발생하거나 해결에 어려움이 있는 경우 솔루션 엔지니어 또는 기술 성공 관리자에게 문의하거나 Snyk 지원팀arrow-up-right에 요청을 제출하십시오.

401 Unauthorized

인증 방법(Bearer 토큰을 위한 API 토큰)이 유효하지 않습니다. Authorization 헤더를 올바르게 설정했는지 확인하십시오.

403 Forbidden

요청을 수행하는 데 필요한 권한이 없습니다. 요청된 조직의 구성원이 아니거나, 조직에 Snyk API 사용 권한이 없거나, 요청된 프로젝트에 대해 충분한 읽기 권한이 없는 경우에 발생할 수 있습니다.

429 Too Many Requests

Snyk API는 속도 제한이 있으므로 과도한 수의 요청은 결국 거부되기 시작합니다. 추가 요청을 하기 전에 잠시 기다리십시오.

500 Internal Server Error

서비스에 내부 시스템 오류가 발생했습니다.

Last updated