0Pricing
CI/CD with GitHub Actions & DevOps Pipelines · Leçon

Sécurité des dépendances et de la chaîne d’approvisionnement (SCA)

Protégez votre pipeline contre les paquets tiers vulnérables grâce à l’analyse de la composition logicielle, à Dependabot, à l’examen des dépendances et aux actions épinglées.

Sécurité des dépendances et de la chaîne d’approvisionnement (SCA) est une leçon CI/CD with GitHub Actions & DevOps Pipelines gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage CI/CD with GitHub Actions & DevOps Pipelines, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours CI/CD with GitHub Actions & DevOps Pipelines comprend 4 leçons au total.

Le risque lié à la chaîne d’approvisionnement

Les applications modernes sont principalement constituées de dépendances tierces. Un seul paquet vulnérable enfoui dans votre arborescence de dépendances peut compromettre toute l’application.

C’est le risque lié à la chaîne d’approvisionnement logicielle, et sa sécurisation constitue un élément essentiel de DevSecOps.

Qu’est-ce que la SCA ?

Analyse de la composition logicielle (SCA) examine les dépendances de votre projet et les compare à des bases de données recensant les vulnérabilités connues (CVE).

Contrairement à SAST, qui inspecte votre code, la SCA se concentre sur les bibliothèques que vous importez.

  • Détecte les versions connues comme vulnérables
  • Signale les licences risquées ou incompatibles
  • Propose des versions sûres vers lesquelles effectuer la mise à niveau

Alertes Dependabot

GitHub fournit Dependabot, qui analyse en continu vos fichiers manifestes et déclenche des alertes lorsqu’une dépendance présente une vulnérabilité connue.

Vous l’activez dans Paramètres > Sécurité et analyse du code. Les alertes apparaissent dans l’onglet Sécurité, accompagnées de niveaux de gravité.

Mises à jour automatiques des dépendances

Dependabot peut également ouvrir automatiquement des demandes de fusion pour mettre à niveau les dépendances vulnérables. Configurez-le à l’aide d’un fichier dependabot.yml.

version: 2
updates:
  - package-ecosystem: npm
    directory: /
    schedule:
      interval: weekly

Revue des dépendances dans les PR

L’action dependency-review-action s’exécute lors des demandes de fusion et bloque la fusion si une PR introduit une dépendance présentant une vulnérabilité connue.

Cela déplace la sécurité vers la gauche en détectant les paquets risqués avant qu’ils n’atteignent la branche principale.

  - name: Dependency Review
    uses: actions/dependency-review-action@v4
    with:
      fail-on-severity: high

Figer les versions des actions

Les actions que vous appelez dans une chaîne d’exécution sont elles-mêmes des dépendances. Référencer @v4 revient à faire confiance à la personne qui contrôle cette balise.

Pour une sécurité maximale, figez les actions sur un SHA de validation complet, qui est immuable.

  - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11

L’importance des fichiers de verrouillage

Un fichier de verrouillage (comme package-lock.json ou poetry.lock) fixe les versions et les hachages exacts des dépendances.

Dans l’intégration continue, utilisez une commande d’installation déterministe afin que les constructions soient reproductibles et ne puissent pas récupérer silencieusement une version falsifiée.

  - name: Install (locked)
    run: npm ci

Générer un SBOM

Une nomenclature logicielle (SBOM) est un inventaire complet de chaque composant inclus dans votre construction. Elle est de plus en plus souvent requise à des fins de conformité.

GitHub peut exporter un SBOM au format SPDX, et des outils comme Syft peuvent en générer un dans l’intégration continue.

  - name: Generate SBOM
    uses: anchore/sbom-action@v0
    with:
      format: spdx-json

Conformité des licences

La SCA couvre également le risque lié aux licences. Intégrer une bibliothèque sous licence GPL à un produit propriétaire peut créer des obligations légales.

Configurez votre analyseur pour signaler ou refuser les licences interdites, afin que le problème apparaisse dans l’intégration continue plutôt que lors d’un audit.

Faire échouer la construction

La détection n’est utile que si elle empêche l’intégration de code problématique. Configurez les contrôles SCA pour faire échouer la chaîne d’exécution lorsqu’une vulnérabilité critique est détectée.

Définissez un seuil de gravité afin que les détections à faible risque génèrent un avertissement, tandis que les détections critiques bloquent la fusion ou le déploiement.

    with:
      fail-on-severity: critical

Surveillance continue

De nouvelles vulnérabilités sont signalées chaque jour : une analyse ponctuelle ne suffit donc pas. Exécutez la SCA selon une planification et à chaque PR.

Vous détecterez ainsi les paquets qui étaient sûrs au moment de la fusion, mais qui sont devenus vulnérables par la suite.

on:
  schedule:
    - cron: '0 6 * * 1'

Vérification rapide

Vérifiez votre compréhension de la sécurité de la chaîne d’approvisionnement.

Récapitulatif

Vous avez appris à sécuriser la chaîne d’approvisionnement logicielle.

  • La SCA analyse les dépendances à la recherche de vulnérabilités connues
  • Dependabot signale les paquets risqués et les met automatiquement à jour
  • La revue des dépendances bloque les PR risquées
  • Figez les actions sur des SHA, utilisez des fichiers de verrouillage et générez un SBOM

Combinée à SAST et à la gestion des secrets, cette approche complète une chaîne d’exécution sécurisée.

Questions Fréquemment Posées

La leçon « Sécurité des dépendances et de la chaîne d’approvisionnement (SCA) » est-elle gratuite ?

Oui — le texte complet de « Sécurité des dépendances et de la chaîne d’approvisionnement (SCA) » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours CI/CD with GitHub Actions & DevOps Pipelines, passe à CoddyKit PRO. Le cours CI/CD with GitHub Actions & DevOps Pipelines comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Sécurité des dépendances et de la chaîne d’approvisionnement (SCA) » ?

Protégez votre pipeline contre les paquets tiers vulnérables grâce à l’analyse de la composition logicielle, à Dependabot, à l’examen des dépendances et aux actions épinglées. Tu pratiques CI/CD with GitHub Actions & DevOps Pipelines avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer CI/CD with GitHub Actions & DevOps Pipelines ?

Aucune expérience préalable n'est requise. CI/CD with GitHub Actions & DevOps Pipelines sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Sécurité des dépendances et de la chaîne d’approvisionnement (SCA) » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon CI/CD with GitHub Actions & DevOps Pipelines ?

Oui. Chaque leçon CI/CD with GitHub Actions & DevOps Pipelines inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Bonnes pratiques de sécurité dans l’intégration et la livraison continues
  2. Gestion des secrets avec GitHub
  3. Tests statiques de sécurité des applications (SAST)
  4. Sécurité des dépendances et de la chaîne d’approvisionnement (SCA)
← Retour à CI/CD with GitHub Actions & DevOps Pipelines