Skip to main content

Cette version de GitHub Enterprise Server n'est plus disponible depuis le 2024-03-26. Aucune publication de correctifs n’est effectuée, même pour les problèmes de sécurité critiques. Pour de meilleures performances, une sécurité améliorée et de nouvelles fonctionnalités, effectuez une mise à niveau vers la dernière version de GitHub Enterprise. Pour obtenir de l’aide sur la mise à niveau, contactez le support GitHub Enterprise.

Définition de l’analyse du code

Vous pouvez définir l’code scanning pour qu’un dépôt recherche les failles de sécurité dans votre code.

Qui peut utiliser cette fonctionnalité ?

People with admin permissions to a repository, or the security manager role for the repository, can configure code scanning for that repository. People with write permissions to a repository can also configure code scanning, but only by creating a workflow file or manually uploading a SARIF file.

Code scanning est disponible pour les dépôts appartenant à l’organisation dans GitHub Enterprise Server. Cette fonctionnalité nécessite une licence pour GitHub Advanced Security. Pour plus d’informations, consultez « À propos de GitHub Advanced Security ».

Remarque : Votre administrateur de site doit activer l’code scanning pour votre instance GitHub Enterprise Server afin que vous puissiez utiliser cette fonctionnalité. Si vous souhaitez utiliser GitHub Actions pour analyser votre code, l’administrateur de site doit également activer GitHub Actions et configurer l’infrastructure nécessaire. Pour plus d’informations, consultez « Configuration de l’analyse de code pour votre appliance ».

À propos de l’code scanning

L’Code scanning vous permet d’intercepter les vulnérabilités dans le code de votre dépôt. L’code scanning CodeQL vous permet de sélectionner des suites de requêtes personnalisées ou intégrées à utiliser dans votre analyse, de définir une planification d’analyse spécifique, de choisir les événements qui déclenchent une analyse, etc.

Votre administrateur de site peut également mettre des actions tierces à la disposition des utilisateurs pour l’code scanning, en configurant GitHub Connect. Pour plus d’informations, consultez « Configuration de l’analyse de code pour votre appliance ».

Si vous exécutez l’analyse du code en utilisant plusieurs configurations, il arrive qu’une alerte ait plusieurs origines d’analyse. Si une alerte a plusieurs origines d’analyse, vous pouvez afficher l’état de l’alerte pour chaque origine d’analyse sur la page de l’alerte. Pour plus d’informations, consultez « À propos des alertes d’analyse du code ».

Remarque : Cet article décrit les fonctionnalités disponibles avec la version de l’action CodeQL et le bundle CodeQL CLI associé inclus dans la mise en production initiale de cette version de GitHub Enterprise Server. Si votre entreprise utilise une version plus récente de l’action CodeQL, consultez la version GitHub Enterprise Cloud de cet article pour obtenir plus d’informations sur les dernières fonctionnalités. Pour plus d’informations sur l’utilisation de la dernière version, consultez « Configuration de l’analyse de code pour votre appliance ».

Prérequis

Votre dépôt a droit à l’code scanning si :

  • Il utilise des langages pris en charge par CodeQL ou vous prévoyez de générer des résultats d’analyse de code avec un outil tiers.
  • GitHub Actions est activé.
  • GitHub Advanced Security est activé.

Si le serveur sur lequel vous exécutez GitHub Enterprise Server n’est pas connecté à Internet, votre administrateur de site peut activer l’code scanning CodeQL en rendant le bundle d’analyse CodeQL disponible sur le serveur. Pour plus d’informations, consultez « Configuration de l’analyse de code pour votre appliance ».

Configuration de l’code scanning avec l’action CodeQL

  1. Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt.

  2. Sous le nom du dépôt, cliquez sur Sécurité. Si vous ne voyez pas l’onglet « Sécurité », sélectionnez le menu déroulant et cliquez sur Sécurité. Capture d’écran d’un en-tête de dépôt montrant les onglets. L’onglet « Sécurité » est mis en évidence avec un encadré orange foncé.

  3. À droite de « Alertes d’Code scanning », cliquez sur Configurer l’code scanning. Si « Alertes d’code scanning » n’est pas disponible, vous devez demander à un propriétaire d’organisation ou à un administrateur de dépôt d’activer GitHub Advanced Security. Pour plus d’informations, consultez « Gestion des paramètres de sécurité et d'analyse pour votre organisation » ou « Gestion des paramètres de sécurité et d’analyse pour votre dépôt ».

  4. Sous « Bien démarrer avec l’code scanning », cliquez sur Configurer ce workflow sur le Workflow d’analyse CodeQL ou sur un workflow tiers.

    Les workflows s’affichent uniquement s’ils sont pertinents pour les langages de programmation détectés dans le dépôt. Le Workflow d’analyse CodeQL est toujours affiché, mais le bouton « Configurer ce workflow » n’est activé que si l’analyse CodeQL prend en charge les langages présents dans le dépôt.

  5. Pour personnaliser la façon dont l’code scanning analyse votre code, modifiez le workflow.

    En règle générale, vous pouvez commiter le Workflow d’analyse CodeQL sans apporter aucun changement à celui-ci. Toutefois, de nombreux workflows tiers nécessitent une configuration supplémentaire. Lisez donc les commentaires dans le workflow avant de commiter.

    Pour plus d’informations, consultez « Personnalisation de l’analyse du code » et « Analyse du code CodeQL pour les langages compilés ».

  6. Cliquez sur Commiter les changements... pour afficher le formulaire de commit des changements.

    Capture d’écran du formulaire pour créer un nouveau fichier. À droite du nom du fichier, un bouton vert intitulé « Commiter les changements... » est encadré en orange foncé.

  7. Dans le champ de message de commit, tapez un message de commit.

  8. Indiquez si vous voulez commiter directement dans la branche par défaut ou créer une branche et démarrer une demande de tirage (pull request).

  9. Cliquez sur Valider le nouveau fichier ou Proposer un nouveau fichier.

Dans le Workflow d’analyse CodeQL suggéré, l’code scanning est configurée pour analyser votre code chaque fois que vous poussez un changement vers la branche par défaut ou des branches protégées, ou que vous déclenchez une demande de tirage (pull request) sur la branche par défaut. En conséquence, l’code scanning commence.

Les déclencheurs on:pull_request et on:push pour l’analyse du code sont chacun utiles à des fins différentes. Pour plus d’informations, consultez « Personnalisation de l’analyse du code ».

Pour plus d’informations sur l’activation en bloc, consultez « Définition de l'analyse du code avec CodeQL à grande échelle ».

Étapes suivantes

Après avoir configuré l’code scanning et autorisé ses actions, vous pouvez :