Skip to content

Commit 32fb439

Browse files
committed
docs: import CloudNativePG main
1 parent 1d6cde4 commit 32fb439

2 files changed

Lines changed: 37 additions & 4 deletions

File tree

website/docs/installation_upgrade.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,19 @@ cosign verify-blob \
391391
--certificate-oidc-issuer "https://token.actions.githubusercontent.com"
392392
```
393393

394+
#### Verifying SLSA provenance
395+
396+
To verify a release binary, download both the artifact and the provenance file
397+
(`multiple.intoto.jsonl`) from the
398+
[GitHub release](https://github.com/cloudnative-pg/cloudnative-pg/releases),
399+
then run:
400+
401+
```shell
402+
slsa-verifier verify-artifact <ARTIFACT> \
403+
--provenance-path multiple.intoto.jsonl \
404+
--source-uri github.com/cloudnative-pg/cloudnative-pg
405+
```
406+
394407
### Verifying the operator container images
395408

396409
Run the following command to verify the signature of the CloudNativePG operator
@@ -420,6 +433,11 @@ docker buildx imagetools inspect ghcr.io/cloudnative-pg/cloudnative-pg:{tag} \
420433
--format '{{ json (index .Provenance "linux/amd64").SLSA }}'
421434
```
422435

436+
:::info
437+
Refer to ["Verifying SLSA provenance"](security.md#verifying-slsa-provenance)
438+
for SLSA Build Level 3 compliance verification.
439+
:::
440+
423441
### Verifying PostgreSQL operand images
424442

425443
CloudNativePG maintains container images for all supported PostgreSQL versions

website/docs/security.md

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -149,9 +149,11 @@ traceability:
149149
comprehensive list of software artifacts included in the image or used during
150150
its build process, formatted using the
151151
[in-toto SPDX predicate standard](https://github.com/in-toto/attestation/blob/main/spec/predicates/spdx.md).
152-
- **[Provenance](https://docs.docker.com/build/metadata/attestations/slsa-provenance/):**
153-
Metadata detailing how the image was built, following the [SLSA Provenance](https://slsa.dev)
154-
framework.
152+
- **Provenance:** Metadata detailing the build process, generated via the
153+
[SLSA GitHub Generator Github action](https://github.com/slsa-framework/slsa-github-generator).
154+
This provides [SLSA Level 3 assurance](https://slsa.dev/spec/v1.0/levels)
155+
that the artifact was built on a trusted, isolated GitHub Actions runner
156+
directly from the project's source.
155157

156158
You can retrieve the SBOM for a specific image and platform using the following
157159
command:
@@ -164,13 +166,26 @@ docker buildx imagetools inspect <IMAGE> \
164166
This command outputs the SBOM in JSON format, providing a detailed view of the
165167
software components and build dependencies.
166168

167-
For the provenance, use:
169+
For the build-level provenance, use:
168170

169171
```shell
170172
docker buildx imagetools inspect <IMAGE> \
171173
--format '{{ json (index .Provenance "<PLATFORM>").SLSA }}'
172174
```
173175

176+
#### Verifying SLSA provenance
177+
178+
You can verify SLSA Level 3 provenance using
179+
[`slsa-verifier`](https://github.com/slsa-framework/slsa-verifier).
180+
181+
To verify a container image, pass its digest reference:
182+
183+
```shell
184+
slsa-verifier verify-image \
185+
ghcr.io/cloudnative-pg/cloudnative-pg@sha256:<DIGEST> \
186+
--source-uri github.com/cloudnative-pg/cloudnative-pg
187+
```
188+
174189
### Guidelines and Frameworks for Container Security
175190

176191
The following guidelines and frameworks have been considered for ensuring

0 commit comments

Comments
 (0)