종속성 목록 내보내기 API

Tier: Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

이 엔드포인트에 대한 모든 호출에는 인증이 필요합니다.

파이프라인 수준의 종속성 목록 내보내기 생성

파이프라인에서 감지된 모든 프로젝트 종속성에 대한 새로운 CycloneDX JSON 내보내기를 생성합니다.

인증된 사용자가 의존성 읽기 권한을 갖고 있지 않으면 이 요청은 403 Forbidden 상태 코드를 반환합니다.

SBOM 내보내기는 내보내기 작성자만 액세스할 수 있습니다.

POST /pipelines/:id/dependency_list_exports
속성 타입 필수 설명
id integer 사용자가 액세스 권한을 갖고 있는 파이프라인의 ID.
export_type string sbom으로 설정해야 합니다.
curl --request POST --header "PRIVATE-TOKEN: <private_token>" "https://gitlab.example.com/api/v4/pipelines/1/dependency_list_exports" --data "export_type=sbom"

생성된 종속성 목록 내보내기는 1시간 후에 자동으로 삭제됩니다.

예시 응답:

{
  "id": 2,
  "has_finished": false,
  "self": "http://gitlab.example.com/api/v4/dependency_list_exports/2",
  "download": "http://gitlab.example.com/api/v4/dependency_list_exports/2/download"
}

단일 종속성 목록 내보내기 가져오기

단일 종속성 목록 내보내기를 가져옵니다.

GET /dependency_list_exports/:id
속성 타입 필수 설명
id integer 종속성 목록 내보내기의 ID.
curl --header "PRIVATE-TOKEN: <private_token>" "https://gitlab.example.com/api/v4/dependency_list_exports/2"

종속성 목록 내보내기가 생성 중일 때 상태 코드는 202 Accepted이고, 준비되었을 때는 200 OK입니다.

예시 응답:

{
  "id": 4,
  "has_finished": true,
  "self": "http://gitlab.example.com/api/v4/dependency_list_exports/4",
  "download": "http://gitlab.example.com/api/v4/dependency_list_exports/4/download"
}

종속성 목록 내보내기 다운로드

단일 종속성 목록 내보내기를 다운로드합니다.

GET /dependency_list_exports/:id/download
속성 타입 필수 설명
id integer 종속성 목록 내보내기의 ID.
curl --header "PRIVATE-TOKEN: <private_token>" "https://gitlab.example.com/api/v4/dependency_list_exports/2/download"

종속성 목록 내보내기가 아직 완료되지 않았거나 찾을 수 없는 경우 응답은 404 Not Found입니다.

예시 응답:

```json { “bomFormat”: “CycloneDX”, “specVersion”: “1.4”, “serialNumber”: “urn:uuid:aec33827-20ae-40d0-ae83-18ee846364d2”, “version”: 1, “metadata”: { “tools”: [ { “vendor”: “Gitlab”, “name”: “Gemnasium”, “version”: “2.34.0” } ], “authors”: [ { “name”: “Gitlab”, “email”: “support@gitlab.com” } ], “properties”: [ { “name”: “gitlab:dependency_scanning:input_file”, “value”: “package-lock.json” } ] }, “components”: [ { “name”: “com.fasterxml.jackson.core/jackson-core”, “purl”: “pkg:maven/com.fasterxml.jackson.core/jackson-core@2.9.2”, “version”: “2.9.2”, “type”: “library”, “licenses”: [ { “license”: { “id”: “MIT”, “url”: “https://spdx.org/licenses/MIT.html” } }, { “license”: { “id”: “BSD-3-Clause”, “url”: “https://spdx.org/licenses/BSD-3-Clause.html” } } ] } ] }