Skip to main content

Enterprise Server 3.15 est actuellement disponible en tant que version finale (RC).

Configuration des mises à jour de sécurité Dependabot

Vous pouvez utiliser Dependabot security updates ou des demandes de tirage manuel pour mettre facilement à jour les dépendances vulnérables.

Remarque : Votre administrateur de site doit configurer les Dependabot updates pour votre instance GitHub Enterprise Server afin que vous puissiez utiliser cette fonctionnalité. Pour plus d’informations, consultez « Activation de Dependabot pour votre entreprise ».

Vous ne pourrez peut-être pas activer ou désactiver les Dependabot updates si un propriétaire d’entreprise a défini une stratégie au niveau de l’entreprise. Pour plus d’informations, consultez « Application de stratégies de sécurité et d’analyse du code pour votre entreprise ».

À propos de la configuration des Dependabot security updates

Vous pouvez activer les Dependabot security updates pour n’importe quel dépôt qui utilise les Dependabot alerts et le graphe de dépendances. Pour plus d’informations, consultez « À propos des mises à jour de sécurité Dependabot ».

Vous pouvez activer ou désactiver Dependabot security updates pour un référentiel individuel, pour une sélection de référentiels dans une organisation, ou pour tous les référentiels appartenant à votre compte personnel ou organisation. Pour plus d’informations sur l’activation des fonctionnalités de sécurité dans une organisation, consultez « Activation des fonctionnalités de sécurité dans votre organisation ».

Note

Lorsque les Dependabot security updates sont activées pour un référentiel, Dependabot tente automatiquement d’ouvrir des demandes de tirage pour résoudre chaque alerte Dependabot ouverte qui a une mise à jour corrective disponible. Si vous préférez personnaliser les alertes pour lesquelles Dependabot ouvre les demandes de tirage, vous devez laisser Dependabot security updates désactivées et créer une règle de triage automatique. Pour plus d’informations, consultez « Personnalisation des règles de triage automatique pour classer les alertes Dependabot par ordre de priorité ».

Dépôts pris en charge

GitHub active automatiquement les Dependabot security updates pour les dépôts nouvellement créés si votre compte personnel ou votre organisation a coché Activer automatiquement pour les nouveaux dépôts pour les Dependabot security updates. Pour plus d’informations, consultez « Gestion des Dependabot security updates pour vos dépôts ».

Si vous créez une duplication d’un dépôt où les mises à jour de sécurité sont activées, GitHub désactive automatiquement les Dependabot security updates pour la duplication. Vous pouvez ensuite décider d’activer les Dependabot security updates sur la duplication spécifique.

Si les mises à jour de sécurité ne sont pas activées pour votre dépôt et que vous ne savez pas pourquoi, essayez d’abord de les activer en utilisant les instructions fournies dans les sections procédurales ci-dessous. Si les mises à jour de sécurité ne fonctionnent toujours pas, vous pouvez contacter votre administrateur de site.

Gestion des Dependabot security updates pour vos dépôts

Vous pouvez également activer ou désactiver les Dependabot security updates pour tous les dépôts qualifiés appartenant à votre compte personnel ou votre organisation. Pour plus d’informations, consultez « Gestion des paramètres de sécurité et d’analyse pour votre compte personnel » ou « Gestion des paramètres de sécurité et d'analyse pour votre organisation ».

Vous pouvez aussi activer ou désactiver les Dependabot security updates pour un dépôt individuel.

Activation ou désactivation des Dependabot security updates pour un dépôt individuel

  1. Sur GitHub, accédez à la page principale du référentiel.

  2. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.

    Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.

  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.

  4. Sous « Sécurité et analyse du code », à droite de « Mises à jour de sécurité Dependabot », cliquez sur Activer pour activer la fonctionnalité ou sur Désactiver pour la désactiver.

Regroupement de Dependabot security updates en une seule demande de tirage

Pour réduire le nombre de demandes de tirage (pull request) que vous pouvez voir, vous pouvez activer les correctifs de sécurité groupés pour votre dépôt ou votre organisation. Lorsque cette option est activée, Dependabot regroupe les correctifs de sécurité en une demande de tirage unique pour chaque écosystème de packages. Pour utiliser les correctifs de sécurité groupés, vous devez d’abord activer les fonctionnalités suivantes :

Remarque : Lorsque les correctifs de sécurité groupés sont activés pour la première fois, Dependabot essaie immédiatement de créer des demandes de tirage groupées. Il se peut que Dependabot clôture d’anciennes demandes de tirage et en ouvre de nouvelles.

Vous pouvez activer les demandes de tirage (pull requests) groupées pour Dependabot security updates d’une ou des deux manières suivantes.

  • Pour regrouper autant de correctifs de sécurité disponibles que possible, entre les annuaires et par écosystème, activez le regroupement dans les paramètres « Sécurité et analyse du code » pour votre référentiel, ou encore dans « Paramètres globaux » sous « Sécurité du code » pour votre organisation.
  • Pour un contrôle plus granulaire du regroupement, tel que le regroupement par nom de package, les dépendances de développement/production, de niveau SemVer, ou entre plusieurs répertoires par écosystème, ajoutez des options de configuration au fichier de configuration dependabot.yml dans votre référentiel.

Remarque : si vous avez configuré des règles de groupe pour Dependabot security updates dans un fichier dependabot.yml, toutes les mises à jour disponibles sont regroupées en fonction des règles que vous avez spécifiées. Dependabot regroupe uniquement les annuaires non configurés dans votre dependabot.yml si le paramètre des correctifs de sécurité groupés au niveau de l’organisation ou du référentiel est également activé.

Activation ou désactivation des Dependabot security updates groupés pour un dépôt individuel

Les administrateurs de référentiel peuvent activer ou désactiver les correctifs de sécurité groupés pour leur référentiel. Modifier le paramètre de référentiel remplace tous les paramètres d’organisation par défaut. Les règles de groupe configurées dans un fichier dependabot.yml remplacent les paramètres d’interface utilisateur pour activer ou désactiver les correctifs de sécurité groupés au niveau de l’organisation ou du référentiel.

  1. Sur GitHub, accédez à la page principale du référentiel.

  2. Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.

    Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Paramètres » est mis en évidence avec un encadré orange foncé.

  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.

  4. Sous Sécurité et analyse du code, à droite de Correctifs de sécurité groupés, cliquez sur Activer pour activer la fonctionnalité ou sur Désactiver pour la désactiver.

Activation ou désactivation des Dependabot security updates groupés pour une organisation

Vous pouvez activer les Dependabot security updates groupées dans une même demande de tirage (pull request). Pour plus d’informations, consultez « Configuration des paramètres de sécurité globaux pour votre organisation ».

Substitution du comportement par défaut avec un fichier de configuration

Vous pouvez remplacer le comportement par défaut de Dependabot security updates en ajoutant un fichier dependabot.yml à votre référentiel. Avec un fichier dependabot.yml, vous pouvez avoir un contrôle plus précis du regroupement et remplacer le comportement par défaut des paramètres Dependabot security updates.

Utilisez l’option groups avec la clé applies-to: security-updates pour créer des ensembles de dépendances (par gestionnaire de package), de sorte que Dependabot n’ouvre qu’une seule demande de tirage (pull request) pour mettre à jour plusieurs dépendances en même temps. Vous pouvez définir des groupes par nom de package (les clés patterns et exclude-patterns), type de dépendance (clé dependency-type) et SemVer (clé update-types).

Dependabot crée des groupes dans l'ordre où ils apparaissent dans votre fichier dependabot.yml. Si une mise à jour de dépendance peut appartenir à plusieurs groupes, elle n’est affectée qu’au premier groupe avec lequel elle correspond.

Si vous avez uniquement besoin de correctifs de sécurité et que vous souhaitez exclure les mises à jour de version, vous pouvez définir open-pull-requests-limit sur 0 pour empêcher les mises à jour de version pour un package-ecosystem donné.

Pour plus d’informations sur les options de configuration disponibles pour les correctifs de sécurité, consultez « Options de configuration pour le fichier dependabot.yml ».

# Example configuration file that:
#  - Has a private registry
#  - Ignores lodash dependency
#  - Disables version-updates
#  - Defines a group by package name, for security updates for golang dependencies

version: 2
registries:
  example:
    type: npm-registry
    url: https://example.com
    token: ${{secrets.NPM_TOKEN}}
updates:
  - package-ecosystem: "npm"
    directory: "/src/npm-project"
    schedule:
      interval: "daily"
    # For Lodash, ignore all updates
    ignore:
      - dependency-name: "lodash"
    # Disable version updates for npm dependencies
    open-pull-requests-limit: 0
    registries:
      - example
  - package-ecosystem: "gomod"
    groups:
      golang:
        applies-to: security-updates
        patterns:
          - "golang.org*"

Remarque : Pour que Dependabot utilise cette configuration pour les publications de sécurité, le directorydoit être le chemin d'accès aux fichiers manifestes, et vous ne devez pas spécifier un de target-branch.

Pour aller plus loin