Erfassung von SLSA-Attestierungen für Images konfigurieren

Das Tool tekton-chains sammelt Beweise für die erstellten Images mit SLSA-Attestierungen.

Das Tool 'tekton-chains' überwacht die build-artifact-Phase der CI-Pipeline und attesiert die erstellten Images. Das Tool zur Angabensammlung wird für jedes Bild in der Methode list_artifacts der gespeicherten Artefakte ausgeführt und erfasst die Attestierung. Anschließend erstellt das Tool die erforderlichen Angaben. Weitere Informationen finden Sie unter list_artifacts.

Das Tool "tekton-Ketten" wird standardmäßig auf von IBM verwalteten Workern implementiert. Informationen zu privaten Workern finden Sie unter Was sind Tekton-Ketten?.

Parameter für SLSA-Attestierung

Sie können die folgenden SLSA-Attestierungsparameter mit dem Tool 'tekton-chains' festlegen.

SLSA-Bestätigungsparameter
Parametername Typ Beschreibung Erforderlich oder optional
slsa-attestation ENUM Setzen Sie diesen Parameter auf den Aufzählungswert 0 oder 1. Setzen Sie den Wert auf 1, um die Erfassung von SLSA-Attestierungsberichten zu aktivieren. Der Standardwert ist 0 Erforderlich
icr-dockerconfigjson SECRET Die base64-encoded Docker config.json-Datei, die Berechtigungsnachweisinformationen für IBM Container Registryspeichert. Legen Sie diesen Parameter fest, wenn die Images in IBM Container Registrygespeichert werden müssen. Optional
artifactory-dockerconfigjson SECRET Die base64-encoded Docker config.json Datei, die Anmeldeinformationen für Artifactory speichert. Legen Sie diesen Parameter fest, wenn Images in Artifactory oder anderen Container-Registrys gespeichert werden. Optional
slsa-attestation-public-key SECRET Der öffentliche Schlüssel base64-encoded zum Überprüfen von SLSA-Attestierungsberichten. Optional

Diese geheimen Schlüssel können manuell erstellt werden, indem Folgendes ausgeführt wird:

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

Verwenden Sie für IBM Container Registry iamapikey als Benutzernamen und den API-Schlüssel IBM Cloud als Kennwort.

Dieser Prozess gibt eine Antwort ähnlich dem folgenden Code-Snippet aus:

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

Aktualisieren Sie in den Pipelineeigenschaften den Parameter artifactory-dockerconfigjson oder icr-dockerconfigjson mit dem Wert .dockerconfigjson .

Angaben und Anhänge

Auf der Basis der Werte, die Sie basierend auf den Details in Tabelle 2 festlegen, werden Angaben generiert. Die DevSecOps Pipeline lädt Beweise in den Locker hoch und schließt die Beweise in die Beweiszusammenfassung für Änderungsanforderungen ein.

Beweisfelder und -werte
Feld Wert
Typ des Tools tekton-chains
Angabentyp com.ibm.cloud.slsa
Assettyp image
Anhänge Attestation report generated by the tekton chains as JSON

Debugging und Protokollierung

Legen Sie den folgenden Parameter für Debugging und Protokollierung fest.

Debug-Parameter
Parametername Standardwert Beschreibung
pipeline-debug 0 Debug-Flag 0 off; 1 on

Auf Scanergebnisse zugreifen

Sie können mit den folgenden Methoden auf Ihre Scanergebnisse zugreifen: