Attestation et Vérification
Cette page explique comment vérifier l’authenticité de nos images de conteneurs et inspecter leur Software Bill of Materials (SBOM).
Vérification des Signatures de Conteneurs
Section intitulée « Vérification des Signatures de Conteneurs »Pour vérifier cryptographiquement qu’une image de conteneur a été signée par notre pipeline CI/CD :
# API Proxycosign verify subnoto/api-proxy:v0.1.0 \ --certificate-identity https://gitlab.com/subnoto/subnoto-monorepo-public//.gitlab-ci.yml@refs/tags/v0.1.0 \ --certificate-oidc-issuer https://gitlab.com | jq
# MCP Servercosign verify subnoto/mcp-server:v0.1.4 \ --certificate-identity https://gitlab.com/subnoto/subnoto-monorepo-public//.gitlab-ci.yml@refs/tags/v0.1.4 \ --certificate-oidc-issuer https://gitlab.com | jqVérification des Attestations
Section intitulée « Vérification des Attestations »Pour vérifier l’attestation SBOM attachée à un conteneur :
# API Proxycosign verify-attestation subnoto/api-proxy:v0.1.0 \ --certificate-identity https://gitlab.com/subnoto/subnoto-monorepo-public//.gitlab-ci.yml@refs/tags/v0.1.0 \ --certificate-oidc-issuer https://gitlab.com \ --type=spdxjson
# MCP Servercosign verify-attestation subnoto/mcp-server:v0.1.4 \ --certificate-identity https://gitlab.com/subnoto/subnoto-monorepo-public//.gitlab-ci.yml@refs/tags/v0.1.4 \ --certificate-oidc-issuer https://gitlab.com \ --type=spdxjsonNotes importantes :
- Le
--certificate-identitydoit correspondre exactement au chemin du fichier GitLab CI et à la référence du tag - Pour différentes versions, mettez à jour à la fois le tag de l’image et le tag de l’identité du certificat
- Seules les versions taguées sont publiées sur DockerHub
- La vérification nécessite l’outil
cosign(installer depuis sigstore.dev)
Inspection du SBOM
Section intitulée « Inspection du SBOM »Pour télécharger et inspecter l’attestation SBOM (Software Bill of Materials) :
cosign download attestation subnoto/api-proxy:latest | \ jq -r .payload | \ base64 -d | \ jq '.predicate | fromjson'Cette commande :
- Télécharge l’attestation depuis le registre de conteneurs
- Extrait le champ payload
- Décode le contenu encodé en base64
- Parse le JSON du prédicat doublement encodé
La sortie affichera un SBOM SPDX complet listant tous les packages et dépendances dans le conteneur.
Analyse des Vulnérabilités
Section intitulée « Analyse des Vulnérabilités »Vous pouvez scanner les images localement en utilisant :
# Utiliser Syft pour générer le SBOMsyft subnoto/mcp-server:latest -o json
# Utiliser Grype pour scanner les vulnérabilitésgrype subnoto/mcp-server:latest