Signatures Cosign non reconnues dans Harbor
Ce problème a été corrigé dans la version v2.15 de Harbor.
Les images signées avec les versions récentes de Cosign (v2.6.0 et supérieures) n'affichent plus le badge de validation de signature dans l'interface Harbor.
Cause du problème
L'outil Cosign a récemment fait évoluer son format de signature par défaut afin d'adopter des structures de bundles plus robustes :
- Cosign v2.6.0 a introduit une option nommée
--new-bundle-format. - Cosign v3.0.0+ a activé ce nouveau format de bundle par défaut.
Avec ce nouveau format, le type MIME de l'artefact généré et poussé est de type application/vnd.dev.sigstore.bundle.v0.3+json. Même si Harbor
stocke correctement les métadonnées de signature dans le registre, il ne parvient pas à afficher le badge dans l'interface web.

Résolution du problème
Pour que l'interface de Harbor reconnaisse et affiche à nouveau vos images commes signées, il y a différentes options :
Option 1 : mettre à jour Harbor
Ce problème a été signalé dans l'issue #22401 et corrigé dans la version 2.15 d'Harbor. Le plus simple reste donc de mettre à jour votre serveur Harbor. Si votre serveur Harbor est hébergé par adista, ce dernier doit déjà être à jour.
Option 2 : modification de la CLI Cosign
# Ancienne commande
cosign sign $IMAGE_DIGEST
# Nouvelle commande
cosign sign --new-bundle-format=false --use-signing-config=false $IMAGE_DIGEST
Vérification
Une fois l'image poussée et signée :
- Connectez-vous à l'interface d'Harbor.
- Accédez à votre projet et cliquez sur l'image ou le tag concerné.
- Le badge vert doit de nouveau apparaitre à côté du tag/digest de votre image, confirmant la bonne association de l'accessoire.

