SLSA 프로버넌스 사양
SLSA 프로버넌스 사양에 대해 설명합니다.
히스토리 GitLab 18.3에서 slsa_provenance_statement 라는 플래그 와 함께 도입 . 기본적으로 비활성화됨. Feature flag 이 기능의 가용성은 Feature flag로 제어됩니다. 자세한 내용은 기록을 참조하세요. 이 기능은 테스트용으로 사용 가능하지만 프로덕션 사용을 위한 준비가 되어 있지 않습니다. SLSA 프로버넌스 사양 은 buildType 참조를 문서화하고 게시하도록 요구합니다. 이 참조는 GitLab SLSA 증명의 소비자가 GitLab SLSA 프로버넌스 문에 고유한 특정 필드를 파싱하는 데 도움을 주기 위한 것입니다. 자세한 내용은 SLSA buildType 문서 를 참조하세요. buildType # 이 공식 SLSA 프로버넌스 buildType 참조: GitLab CI/CD 잡 의 실행을 설명합니다. GitLab에서 호스팅 및 유지 관리됩니다. 설명 # 이 buildType 은 소프트웨어 아티팩트를 빌드하는 워크플로우의 실행을 설명합니다. Note 소비자는 인식할 수 없는 외부 매개변수를 무시해야 합니다. 변경 사항은 기존 외부 매개변수의 의미를 변경해서는 안 됩니다. 외부 매개변수 # 외부 매개변수: 필드 값 source 프로젝트의 URL. entryPoint 빌드를 트리거한 CI/CD 잡의 이름. variables 빌드 명령 실행 중 사용 가능한 CI/CD 또는 환경 변수의 이름과 값. 변수가 마스크되거나 숨겨진 경우 변수의 값은 [MASKED] 로 설정됩니다. 내부 매개변수 # 기본적으로 채워지는 내부 매개변수: 필드 값 name 러너의 이름. executor 러너 실행기. architecture CI/CD 잡이 실행되는 아키텍처. job 빌드를 트리거한 CI/CD 잡의 ID. 예시 # 이 예시는 GitLab이 생성한 프로버넌스 문의 형식을 보여줍니다: { "_type" : "https://in-toto.io/Statement/v1" , "subject" : [ { "name" : "artifacts.zip" , "digest" : { "sha256" : "717a1ee89f0a2829cf5aad57054c83615675b04baa913bdc19999d7519edf3f2" } } ] , "predicateType" : "https://slsa.dev/provenance/v1" , "predicate" : { "buildDefinition" : { "buildType" : "" , "externalParameters" : { "source" : "http://gdk.test:3000/root/repo_name" , "entryPoint" : "build-job" , "variables" : { "CI_PIPELINE_ID" : "576" , "CI_PIPELINE_URL" : "http://gdk.test:3000/root/repo_name/-/pipelines/576" , "CI_JOB_ID" : "412" , [ ... additional environment variables .
