이 문서는 CycloneDX Property Taxonomy에서 gitlab 네임스페이스가 사용하는 네임스페이스와 속성을 정의합니다.
이 파일을 변경하기 전에 Threat Insights 엔지니어링 팀 @gitlab-org/govern/threat-insights에 문의하세요.
속성 위치 기준#
Property of 칼럼은 속성을 어떤 객체에 첨부할 수 있는지를 설명합니다.
-
metadata에 첨부된 속성은 문서 내 모든 객체에 적용됩니다.
-
개별 객체에 첨부된 속성은 해당 객체와 그 하위에 중첩된 객체에 적용됩니다.
-
자기 자신을 중첩할 수 있는 객체(예: components)는 최상위 객체에만 속성을 적용할 수 있습니다.
속성이 metadata와 개별 component 모두에 설정된 경우, 해당 컴포넌트에 대해서는 컴포넌트 수준의 값이 우선합니다. 속성이 metadata에만 설정된 경우, 모든 컴포넌트에 동일하게 적용됩니다. 이는 서로 다른 입력 파일에서 컴포넌트가 유래한 병합된 SBOM에서 중요합니다.
gitlab 네임스페이스 분류 체계#
| 네임스페이스 |
설명 |
| meta |
속성 스키마에 대한 데이터를 위한 네임스페이스. |
| dependency_scanning |
종속성 스캐닝과 관련된 데이터를 위한 네임스페이스. |
| container_scanning |
컨테이너 스캐닝과 관련된 데이터를 위한 네임스페이스. |
| 속성 |
설명 |
Property of |
| gitlab:meta:schema_version |
GitLab이 보고서의 속성을 파싱하는 방법을 결정하는 데 사용됩니다. 반드시 1이어야 합니다. |
metadata |
gitlab:dependency_scanning 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:dependency_scanning:category |
의존성이 속하는 카테고리 또는 의존성 그룹의 이름. 카테고리가 지정되지 않으면 기본적으로 production이 사용됩니다. |
production, development, test |
components |
네임스페이스#
| 네임스페이스 |
설명 |
| gitlab:dependency_scanning:input_file |
의존성을 생성하기 위해 분석된 입력 파일에 대한 정보를 위한 네임스페이스. |
| gitlab:dependency_scanning:source_file |
의존성을 관리하기 위해 편집할 수 있는 파일에 대한 정보를 위한 네임스페이스. |
| gitlab:dependency_scanning:package_manager |
의존성과 관련된 패키지 관리자에 대한 정보를 위한 네임스페이스. |
| gitlab:dependency_scanning:language |
의존성과 관련된 프로그래밍 언어에 대한 정보를 위한 네임스페이스. |
취약점 스캐닝을 위한 필수 속성#
취약점 스캐닝이 결과를 생성하려면 다음 속성이 필요합니다:
input_file:path가 없으면 source_file:path가 대체(fallback)로 사용됩니다. 둘 다 없으면 해당 컴포넌트에 대한 취약점 결과가 생성되지 않습니다. GitLab 18.10 이상에서는 파이프라인 보안 탭에 오류가 표시됩니다.
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:dependency_scanning:input_file:path |
의존성을 생성하기 위해 분석된 파일의 리포지터리 루트 기준 상대 경로. 일반적으로 잠금 파일. |
package-lock.json, Gemfile.lock, go.sum |
metadata, component |
gitlab:dependency_scanning:source_file 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:dependency_scanning:source_file:path |
의존성을 관리하기 위해 편집할 수 있는 파일의 리포지터리 루트 기준 상대 경로. |
package.json, Gemfile, go.mod |
metadata, component |
gitlab:dependency_scanning:package_manager 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:dependency_scanning:package_manager:name |
의존성과 관련된 패키지 관리자의 이름 |
npm, bundler, go |
metadata, component |
gitlab:dependency_scanning:language 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:dependency_scanning:language:name |
의존성과 관련된 프로그래밍 언어의 이름 |
JavaScript, Ruby, Go |
metadata, component |
gitlab:dependency_scanning_component 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:dependency_scanning_component:reachability |
컴포넌트가 사용 중인지 여부를 식별합니다 |
in_use, not_found |
component |
gitlab:container_scanning 네임스페이스 분류 체계#
네임스페이스#
| 네임스페이스 |
설명 |
| gitlab:container_scanning:image |
스캔된 이미지에 대한 정보를 위한 네임스페이스. |
| gitlab:container_scanning:operating_system |
스캔된 이미지와 관련된 운영 체제에 대한 정보를 위한 네임스페이스. |
gitlab:container_scanning:image 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:container_scanning:image:name |
스캔된 이미지의 이름. |
registry.gitlab.com/gitlab-org/security-products/analyzers/gemnasium/tmp/main |
metadata, component |
| gitlab:container_scanning:image:tag |
스캔된 이미지의 태그. |
91d61f07e0a4b3dd34b39d77f47f6f9bf48cde0a |
metadata, component |
gitlab:container_scanning:operating_system 네임스페이스 분류 체계#
| 속성 |
설명 |
예시 값 |
Property of |
| gitlab:container_scanning:operating_system:name |
운영 체제의 이름. |
alpine |
metadata, component |
| gitlab:container_scanning:operating_system:version |
운영 체제의 버전. |
3.1.8 |
metadata, component |