Skip to main content

Révision des changements de dépendances dans une demande de tirage

Si une demande de tirage contient des modifications de dépendances, vous pouvez afficher un résumé de ce qui a changé et déterminer s’il existe des vulnérabilités connues dans l’une des dépendances.

Qui peut utiliser cette fonctionnalité ?

La révision des dépendances est incluse dans GitHub Enterprise Cloud pour les référentiels publics. Pour utiliser la révision des dépendances dans les référentiels privés appartenant à des organisations, vous devez disposer d’une licence pour GitHub Advanced Security. Pour plus d’informations, consultez « À propos de GitHub Advanced Security ».

À propos de la vérification des dépendances

Une révision des dépendances vous aide à comprendre les changements de dépendances et l’impact de ceux-ci sur la sécurité à chaque demande de tirage. Cette fonctionnalité fournit une visualisation facilement compréhensible des changements de dépendances avec des différences enrichies sous l’onglet « Fichiers modifiés » d’une demande de tirage (pull request). Une révision des dépendances vous informe de ce qui suit :

  • Dépendances ajoutées, supprimées ou mises à jour, ainsi que leurs dates de publication.
  • Nombre de projets utilisant ces composants.
  • Données de vulnérabilité pour ces dépendances.

Avant de pouvoir utiliser une révision des dépendances dans un dépôt privé, vous devez activer le graphique de dépendance. Pour plus d’informations, consultez « Exploration des dépendances d’un dépôt ».

La révision des dépendances vous permet d’effectuer un « shift-left ». Vous pouvez utiliser les informations prédictives fournies pour intercepter les dépendances vulnérables avant qu’elles atteignent la production. Pour plus d’informations, consultez « À propos de la vérification des dépendances ».

Vous pouvez utiliser action de révision des dépendances pour vous aider à appliquer des révisions de dépendances sur les demandes de tirage (pull requests) dans votre référentiel. action de révision des dépendances analyse vos demandes de tirage à la recherche de changements de dépendances et génère une erreur si les nouvelles dépendances présentent des vulnérabilités connues. L’action est prise en charge par un point de terminaison d’API qui compare les dépendances entre deux révisions et signale toutes les différences.

Pour plus d’informations sur l’action et le point de terminaison d’API, consultez la documentation dependency-review-action et « Points de terminaison d’API REST pour la révision des dépendances ».

Vous pouvez configurer action de révision des dépendances pour mieux répondre à vos besoins en spécifiant le type de vulnérabilité de dépendance que vous souhaitez intercepter. Pour plus d’informations, consultez « Configuration de la révision des dépendances ».

Révision des dépendances dans une demande de tirage

  1. Sous le nom du référentiel, cliquez sur Demandes de tirage.

    Capture d’écran de la page principale d’un dépôt. Dans la barre de navigation horizontale, un onglet intitulé « Demandes de tirage » est indiqué en orange foncé.

  2. Dans la liste des demandes de tirage, cliquez sur la demande de tirage que vous voulez réviser.

  3. Dans la demande de tirage, cliquez sur Fichiers modifiés.

    Capture d’écran des onglets d’une demande de tirage. L’onglet « Fichiers modifiés » est indiqué en orange foncé.

  4. Si la demande de tirage contient de nombreux fichiers, utilisez le menu déroulant Filtre de fichiers pour écarter les fichiers qui n’enregistrent pas de dépendances. Cela vous aidera à concentrer votre révision sur les modifications de dépendances.

    Capture d’écran de l’onglet « Fichiers modifiés ». Une liste déroulante intitulée « Filtre de fichiers » est développée, affichant une liste de types de fichiers avec des cases à cocher. La révision des dépendances fournit une vue plus claire de ce qui a changé dans les gros fichiers lock, où la différence de source n’est pas rendue par défaut.

    Remarque : des différences enrichies de révision des dépendances ne sont pas disponibles pour les fichiers JavaScript statiques validés comme jquery.js.

  5. À droite de l’en-tête d’un fichier manifeste ou de verrouillage, affichez la révision des dépendances en cliquant sur .

    Capture d’écran de l’onglet « Fichiers changés » d’une demande de tirage. Le bouton permettant d’afficher le diff enrichi, étiqueté avec une icône de fichier, est indiqué en orange foncé.

  6. Vérifiez les dépendances répertoriées dans la révision des dépendances.

    Capture d’écran des avertissements de vulnérabilité dans la révision des dépendances d’une demande de tirage.

    Toutes les dépendances ajoutées ou modifiées qui présentent des vulnérabilités sont répertoriées en premier, classées par gravité, puis par nom de dépendance. Cela signifie que les dépendances dont la gravité est la plus élevée figurent toujours en haut d’une révision des dépendances. Les autres dépendances sont répertoriées dans l’ordre alphabétique des noms de dépendance.

    L’icône en regard de chaque dépendance indique si celle-ci a été ajoutée (), mise à jour () ou supprimée () dans cette demande de tirage.

    Les informations sont les suivantes :

    • Version, ou plage de versions, de la dépendance nouvelle, mise à jour ou supprimée.
    • Pour une version spécifique d’une dépendance :
      • Âge de cette mise en production de la dépendance.
      • Nombre de projets dépendants de ce logiciel. Ces informations sont extraites du graphique de dépendance. La vérification du nombre de dépendants peut vous aider à éviter d’ajouter accidentellement la mauvaise dépendance.
      • Licence utilisée par cette dépendance si cette information est disponible. Ceci est utile si vous voulez éviter que du code avec certaines licences soit utilisé dans votre projet.

    Quand une dépendance a une vulnérabilité connue, le message d’avertissement les informations suivantes :

    • Brève description de la vulnérabilité.
    • Numéro d’identification des vulnérabilités et expositions courantes (CVE) ou GitHub Security Advisories (GHSA). Vous pouvez cliquer sur cet ID pour en savoir plus sur la vulnérabilité.
    • Gravité de la vulnérabilité.
    • Version de la dépendance dans laquelle la vulnérabilité a été corrigée. Si vous examinez une demande de tirage pour quelqu’un, vous pourriez demander au contributeur de mettre à jour la dépendance vers la version corrigée ou une mise en production ultérieure.
  7. Vous pouvez également examiner le diff source, car il peut y avoir des changements dans le manifeste ou le fichier de verrouillage qui ne modifient pas les dépendances, ou il peut y avoir des dépendances que GitHub ne peut pas analyser et qui, par conséquent, n’apparaissent pas dans l’examen des dépendances.

    Pour revenir à la vue du diff source, cliquez sur le bouton .

    Capture d’écran de l’onglet « Fichiers changés » d’une demande de tirage. Le bouton permettant d’afficher le diff source, qui est étiqueté avec une icône de code, est indiqué en orange foncé.