이미지에 대한 SLSA 증명 콜렉션 구성

도구 tekton 체인은 SLSA 증명을 사용하여 빌드된 이미지의 증거를 수집합니다.

Tekton 체인 도구는 CI 파이프라인의 build-artifact 단계를 모니터하고 빌드된 이미지를 증명합니다. 증거 수집 도구는 저장된 아티팩트 list_artifacts 메소드의 각 이미지에 대해 실행되며 증명을 수집합니다. 그런 다음 도구가 필요한 증거를 작성합니다. 자세한 정보는 list_artifacts 를 참조하십시오.

tekton 체인 도구는 기본적으로 IBM 관리 작업자에게 배치됩니다. 개인용 작업자에 대한 정보는 Tekton Chains의 개념 을 참조하십시오.

SLSA 증명 매개변수

tekton 체인 도구를 사용하여 다음 SLSA 증명 매개변수를 설정할 수 있습니다.

SLSA 증명 매개변수
매개변수 이름 유형 설명 필수 또는 선택사항
slsa-attestation ENUM 이 매개변수를 0 또는 1 의 enum값으로 설정하십시오. 값을 1 로 설정하여 SLSA 증명 보고서의 콜렉션을 사용으로 설정하십시오. 기본값은 0 필수입니다
icr-dockerconfigjson SECRET IBM Container Registry에 대한 신임 정보를 저장하는 base64-encoded Docker config.json 파일입니다. 이미지를 IBM Container Registry에 저장해야 하는 경우 이 매개변수를 설정하십시오. 선택사항
artifactory-dockerconfigjson 비밀 base64-encoded Docker config.json Artifactory 에 대한 자격 증명 정보를 저장하는 파일입니다. 이미지가 Artifactory 또는 기타 컨테이너 레지스트리에 저장된 경우 이 매개변수를 설정하십시오. 선택사항
slsa-attestation-public-key SECRET SLSA 증명 보고서를 확인하기 위한 base64-encoded 공개 키입니다. 선택사항

다음을 실행하여 이러한 시크릿을 수동으로 작성할 수 있습니다.

kubectl create secret docker-registry mysecret \
--dry-run \
--docker-server=<container registry url>  \
--docker-username=<username> \
--docker-password=<artifactory token> \
--docker-email=<email> \
-o yaml

IBM Container Registry의 경우 사용자 이름으로 iamapikey 를 사용하고 비밀번호로 IBM Cloud API키를 사용하십시오.

이 프로세스는 다음 코드 스니펫과 유사한 응답을 출력합니다.

apiVersion: v1
data:
  .dockerconfigjson: <your secret>
kind: Secret
metadata:
  creationTimestamp: null
  name: regcred
type: kubernetes.io/dockerconfigjson

파이프라인 특성에서 artifactory-dockerconfigjson 또는 icr-dockerconfigjson 매개변수를 .dockerconfigjson 값으로 업데이트하십시오.

증거 및 첨부 파일

표 2의 세부사항을 기반으로 설정한 값을 기반으로 증거가 생성됩니다. DevSecOps 파이프라인은 증거를 사물함에 업로드하고 변경 요청에 대한 증거 요약에 증거를 포함합니다.

증거 필드 및 값
필드
도구 유형 tekton-chains
증거 유형 com.ibm.cloud.slsa
자산 유형 image
첨부 파일 Attestation report generated by the tekton chains as JSON

디버깅 및 로깅

디버깅 및 로깅을 위해 다음 매개변수를 설정하십시오.

디버그 매개변수
매개변수 이름 기본값 설명
pipeline-debug 0 디버그 플래그 0 off, 1 on

스캔 결과 액세스

다음 방법을 사용하여 스캔 결과에 액세스할 수 있습니다.