Passer au contenu principal

Flux de révision

Comment réviser un inventaire tiers avant publication

Une séquence concrète pour l'ingénierie et la conformité, de l'import jusqu'à la publication validée, sans sauter d'étape.

Dernière mise à jour : 2 juillet 2026

La divulgation de licences tierces échoue quand l'inventaire est importé une fois et jamais révisé. Vous devez faire correspondre chaque composant à une licence identifiée, joindre le texte intégral de la licence, et bloquer la publication tant qu'un humain n'a pas approuvé ce que la page de conformité représentera.

Ce flux s'applique que vous partiez de lockfiles npm, de SBOM CycloneDX, d'exports FOSSA ou Snyk, ou de tableurs manuels. Les étapes sont les mêmes : import, révision par composant, publication avec verrous, maintenance à chaque version.

  1. Importer depuis les éléments livrés

    Lockfiles, SBOM ou exports d'outils depuis la branche de version. Chaque ligne démarre non révisée.

  2. Réviser chaque composant

    Confirmer la licence, joindre le texte intégral, faire remonter le copyleft et les conflits.

  3. Publier avec des verrous

    Aucune ligne non révisée, URL stable, exports à partir du même instantané.

  4. Maintenir à chaque version

    Les contrôles de dérive signalent les changements ; révisez et republiez à nouveau avant que les acheteurs ne le remarquent.

Pourquoi la révision compte-t-elle plus que l'import ?

Parce que l'import vous dit seulement ce qui est présent, pas si les métadonnées de licence sont fiables : les registres de paquets étiquettent parfois mal les licences, les fournisseurs changent leurs conditions, et les dépendances transitives introduisent du copyleft inattendu. Un fichier d'inventaire tiers est une entrée, pas une page de conformité terminée.

L'ampleur du phénomène est documentée, et ce sont exactement les cas que l'import automatisé ne peut pas résoudre seul.

Les verrous de révision existent pour que vous ne puissiez pas publier une URL de conformité des licences qui en dit plus que ce que votre équipe a vérifié. Les achats et les auditeurs considèrent la page publique comme votre représentation des obligations de licences tierces.

des bases de code auditées contiennent des conflits de licence

56 %

Black Duck 2025 OSSRA.

contiennent de l'open source sans licence ou avec une licence personnalisée

33 %

Les lignes qu'un humain doit juger avant qu'une page ne puisse les revendiquer.

Étape 1 : importer depuis les éléments livrés

Partez des artefacts rattachés au build que vous livrez : package-lock.json, pnpm-lock.yaml, yarn.lock, go.mod, Cargo.lock, pom.xml, Gemfile.lock, un SBOM CycloneDX depuis la CI, ou des exports de votre outil SBOM existant. Marquez chaque ligne en attente de révision jusqu'à ce que quelqu'un confirme la licence.

Limitez l'import à un seul produit. Les entreprises multi-produits ont besoin de pages de conformité des licences séparées, ou de sections clairement distinctes, par produit livré. Mélanger les inventaires crée des erreurs de divulgation.

  • Importez les lockfiles ou SBOM depuis la branche de version, pas depuis main si elle diverge.
  • Incluez les polices, icônes, SDK et ressources embarquées que votre politique exige.
  • Signalez les doublons et fusionnez les entrées qui font référence au même composant.
  • Enregistrez la date d'import et l'empreinte du fichier source pour le journal d'audit.
  • Ne publiez pas automatiquement. Chaque entrée démarre non révisée.

Étape 2 : réviser chaque composant

Pour chaque ligne, confirmez que l'identifiant de licence correspond à l'usage réel, pas seulement aux métadonnées de package.json. Repérez les déclencheurs de copyleft. Joignez le texte intégral de la licence. Documentez explicitement les exclusions.

Les réviseurs se concentrent sur la GPL, la LGPL, l'AGPL, les SDK propriétaires, et les composants avec des données de licence manquantes ou contradictoires. Ces lignes bloquent la publication tant qu'elles ne sont pas résolues.

  • Faites correspondre la licence à sa source : fichier LICENSE du dépôt, accord fournisseur, ou identifiant SPDX confirmé par un humain.
  • Ajoutez le texte intégral de la licence au dossier avant de marquer comme approuvé.
  • Signalez le copyleft, le copyleft réseau (AGPL) et les licences personnalisées pour une revue par le juridique ou l'ingénierie senior.
  • Résolvez les conflits (le registre indique MIT, le dépôt indique Apache) avant d'approuver.
  • Documentez les composants exclus du produit livré, et pourquoi.
  • Exigez un second approbateur pour les licences à haut risque, si votre politique en définit un.

Étape 3 : publier la page de conformité

Ne publiez que lorsque les verrous sont franchis : aucune ligne non révisée, texte intégral joint, périmètre du produit clair, URL stable. La page de conformité des licences publique contient les mêmes données que vos exports. Un seul inventaire révisé, plusieurs sorties.

Les pages de divulgation de licences tierces doivent se charger sans authentification, lister les composants clairement, et inclure le texte intégral des licences que les achats peuvent rechercher et copier. C'est ce que recherchent les revues en environnement grand compte.

  • Bloquez la publication si un composant du périmètre n'a pas de texte de licence approuvé.
  • Générez l'URL publique et vérifiez-la en navigation privée avant de la partager en externe.
  • Exportez les lots JSON, d'attribution et de divulgation à partir du même instantané approuvé.
  • Enregistrez qui a approuvé la publication et à quel tag de version elle correspond.

Étape 4 : maintenir à chaque version

La conformité des licences n'est pas un exercice ponctuel. De nouvelles dépendances, des montées de version et des changements de licence arrivent à chaque sprint. Les contrôles de dérive comparent les lockfiles ou SBOM actuels à votre dernière publication approuvée, et signalent les différences avant que les clients ne les remarquent.

Quand l'inventaire change, relancez les verrous de révision. Mettez à jour la page de conformité des licences. N'envoyez des URL mises à jour aux achats qu'une fois la nouvelle publication approuvée, pas dès que l'import se termine.

  • Exécutez des contrôles de pipeline ou de CI à chaque pull request, tag ou version.
  • Signalez les nouveaux paquets non révisés avant la version, selon votre politique.
  • Réapprouvez les composants copyleft quand le modèle de liaison ou de distribution change.
  • Conservez le journal d'audit : import, révision, publication, événements de dérive.

Cookies sur sourcetrust.dev

Nous utilisons des cookies essentiels à la sécurité, notamment pour prévenir les abus sur notre analyse de site et notre formulaire de demande de démonstration. Avec votre permission, nous utilisons aussi des analytiques et diagnostics optionnels (Google Tag Manager sur ce site, et le SDK navigateur Sentry dans l'application SourceTrust lorsqu'il est configuré). Consultez notre politique relative aux cookies.