Skip to main content

GitHub AE est actuellement en version limitée.

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 AE. Il s’agit d’une fonctionnalité de GitHub Advanced Security (gratuite avec la version bêta). Pour plus d’informations, consultez « À propos de GitHub Advanced Security ».

À 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.

Vous pouvez également configurer l’code scanning avec des outils tiers. Pour plus d’informations, consultez « Configuration de l’code scanning avec des actions tierces ».

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 AE. 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.

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é.

Avant de configurer l’code scanning pour un dépôt, vous devez vérifier qu’au moins un exécuteur GitHub Actions auto-hébergé est disponible pour le dépôt.

Les propriétaires d’entreprise et les administrateurs d’organisation et de dépôt peuvent ajouter des exécuteurs auto-hébergés. Pour plus d’informations, consultez « À propos des exécuteurs auto-hébergés » et « Ajout d’exécuteurs auto-hébergés ».

Configuration de l’code scanning avec l’action CodeQL

  1. Dans votre entreprise, 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 :