Provenance Information for flux-source-controller Images

Provenance information for flux-source-controller Chainguard Image

All Chainguard Images contain verifiable signatures and high-quality SBOMs (software bill of materials), features that enable users to confirm the origin of each image built and have a detailed list of everything that is packed within.

Verifying flux-source-controller Image Signatures

The flux-source-controller Chainguard Images are signed using Sigstore, and you can check the included signatures using cosign.

The following command requires cosign and jq to be installed on your machine. It will pull detailed information about all signatures found for the provided image.

cosign verify --certificate-oidc-issuer=https://token.actions.githubusercontent.com --certificate-identity=https://github.com/chainguard-images/images/.github/workflows/release.yaml@refs/heads/main cgr.dev/chainguard/flux-source-controller | jq

By default, this command will fetch signatures for the latest tag. You can also specify the tag you want to fetch signatures for.

Downloading flux-source-controller Image Attestations

The following attestations for the flux-source-controller image can be obtained and verified via cosign:

Attestation TypeDescription
https://slsa.dev/provenance/v1The SLSA 1.0 provenance attestation contains information about the image build environment.
https://apko.dev/image-configurationContains the configuration used by that particular image build, including direct dependencies, user accounts, and entry point.
https://spdx.dev/DocumentContains the image SBOM (Software Bill of Materials) in SPDX format.

To download an attestation, use the cosign download attestation command and provide both the predicate type and the build platform. For example, the following command will obtain the SBOM for the flux-source-controller image on unix/amd64:

cosign download attestation \
  --platform=linux/amd64 \
  --predicate-type=https://spdx.dev/Document \
  cgr.dev/chainguard/flux-source-controller | jq -r .payload | base64 -d | jq .predicate

By default, this command will fetch the SBOM assigned to the latest tag. You can also specify the tag you want to fetch the attestation from.

To download a different attestation, replace the --predicate-type parameter value with the desired attestation URL identifier.

Verifying flux-source-controller Image Attestations

You can use the cosign verify-attestation command to check the signatures of the flux-source-controller image attestations:

cosign verify-attestation \
--type https://spdx.dev/Document \
--certificate-oidc-issuer=https://token.actions.githubusercontent.com \
--certificate-identity=https://github.com/chainguard-images/images/.github/workflows/release.yaml@refs/heads/main \
cgr.dev/chainguard/flux-source-controller

This will pull in the signature for the attestation specified by the --type parameter, which in this case is the SPDX attestation. You should get output that verifies the SBOM attestation signature in cosign’s transparency log:

Verification for cgr.dev/chainguard/flux-source-controller --
The following checks were performed on each of these signatures:
- The cosign claims were validated
- Existence of the claims in the transparency log was verified offline
- The code-signing certificate was verified using trusted certificate authority certificates
Certificate subject:  https://github.com/chainguard-images/images/.github/workflows/release.yaml@refs/heads/main
Certificate issuer URL:  https://token.actions.githubusercontent.com
GitHub Workflow Trigger: schedule
GitHub Workflow SHA: da283c26829d46c2d2883de5ff98bee672428696
GitHub Workflow Name: .github/workflows/release.yaml
GitHub Workflow Trigger chainguard-images/images
GitHub Workflow Ref: refs/heads/main
...

Last updated: 2022-11-01 11:07