Skip to main content

Configuration de la configuration par dĂ©faut pour l’analyse du code

Vous pouvez configurer la configuration avancée d'un référentiel pour trouver les vulnérabilités de sécurité dans votre code à l'aide d'une configuration code scanning hautement personnalisable.

Qui peut utiliser cette fonctionnalité ?

PropriĂ©taires de rĂ©fĂ©rentiels, propriĂ©taire d’organisations, gestionnaires de sĂ©curitĂ© et utilisateurs avec le rĂŽle d’administrateur

Code scanning est disponible pour les types de rĂ©fĂ©rentiels suivants :

  • Des rĂ©fĂ©rentiels publics sur GitHub.com
  • RĂ©fĂ©rentiels appartenant Ă  l’organisation sur GitHub Team ou GitHub Enterprise Cloud avec GitHub Code Security activĂ©

À propos de la configuration avancĂ©e pour code scanning

La configuration avancĂ©e de l’code scanning est utile quand vous devez personnaliser votre code scanning. En crĂ©ant et en modifiant un fichier de workflow, vous pouvez dĂ©finir le mode de gĂ©nĂ©ration de langages compilĂ©s, choisir les requĂȘtes Ă  exĂ©cuter, sĂ©lectionner les langages Ă  analyser, utiliser une gĂ©nĂ©ration matricielle, etc. Vous avez Ă©galement accĂšs Ă  toutes les options de contrĂŽle des workflows, par exemple : modification de la planification de l’analyse, dĂ©finition de dĂ©clencheurs de workflow, spĂ©cification d’exĂ©cuteurs spĂ©cialisĂ©s Ă  utiliser. Pour plus d’informations sur les flux de travail GitHub Actions, consultez Workflows.

Vous pouvez Ă©galement configurer l’code scanning avec des outils tiers. Pour plus d’informations, consultez Configuration de 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 Â».

Si vous n’avez pas besoin d’une configuration d’code scanning hautement personnalisable, envisagez d’utiliser la configuration par dĂ©faut de l’code scanning. Pour plus d’informations sur le droit Ă  la configuration par dĂ©faut, consultez DĂ©finition de la configuration par dĂ©faut pour l’analyse du code.

Prérequis

Votre référentiel est éligible à la configuration avancée s'il remplit ces conditions.

  • 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 sont activĂ©s.
  • Il est visible publiquement ou GitHub Code Security est activĂ©.

DĂ©finition de la configuration avancĂ©e pour l’code scanning avec CodeQL

Vous pouvez personnaliser votre analyse CodeQL en crĂ©ant et en modifiant un fichier de workflow. La sĂ©lection d’une configuration avancĂ©e gĂ©nĂšre un fichier de workflow de base pour vous permettre de personnaliser Ă  l’aide de la syntaxe de workflow standard et de spĂ©cifier des options pour l’action CodeQL. Consultez Workflows et Personnalisation de votre configuration avancĂ©e pour l’analyse de code.

L’utilisation d’actions pour exĂ©cuter l’code scanning repose sur le comptage des minutes. Pour plus d’informations, consultez « Facturation GitHub Actions Â».

  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 Advanced Security.

  4. Faites dĂ©filer vers le bas jusqu’à « Code Security Â», dans la ligne « Analyse CodeQL Â», sĂ©lectionnez ** Configurer ** , puis cliquez sur AvancĂ©.

    Remarque

    Si vous passez de la configuration par dĂ©faut Ă  la configuration avancĂ©e, dans la ligne « Analyse CodeQL Â», sĂ©lectionnez , puis cliquez sur Passer Ă  la configuration avancĂ©e. Dans la fenĂȘtre indĂ©pendante qui s’affiche, cliquez sur DĂ©sactiver CodeQL .

    Capture d’écran de la section « Code Security Â» des paramĂštres « Advanced Security Â». Le bouton « Configuration avancĂ©e Â» est mis en Ă©vidence Ă  l’aide d’un rectangle orange.

  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 votre configuration avancĂ©e pour l’analyse de 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 Commiter le nouveau fichier pour commiter le fichier de workflow dans la branche par défaut ou sur Proposer un nouveau fichier pour commiter le fichier dans une nouvelle branche.

  10. Si vous avez créé une branche, cliquez sur Créer une demande de tirage et ouvrez une demande de tirage pour fusionner votre changement dans la branche par défaut.

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. Consultez Personnalisation de votre configuration avancĂ©e pour l’analyse de code et DĂ©clenchement d’un workflow.

Pour plus d’informations sur l’activation en bloc, consultez DĂ©finition de la configuration avancĂ©e pour l’analyse du code avec CodeQL Ă  grande Ă©chelle.

Configuration de l’code scanning avec des actions tierces

GitHub comprend des modĂšles de flux de travail pour les actions tierces, ainsi que l’action CodeQL. L’utilisation d’un modĂšle de workflow est beaucoup plus facile que l’écriture d’un workflow sans aide.

L’utilisation d’actions pour exĂ©cuter l’code scanning repose sur le comptage des minutes. Pour plus d’informations, consultez « Facturation GitHub Actions Â».

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

  2. Sous le nom de votre dépÎt, cliquez sur Actions.

    Capture d’écran des onglets du rĂ©fĂ©rentiel « github/docs Â». L’onglet « Actions Â» est mis en surbrillance avec un encadrĂ© orange.

  3. Si le rĂ©fĂ©rentiel a dĂ©jĂ  au moins un workflow configurĂ© et en cours d’exĂ©cution, cliquez sur Nouveau workflow pour afficher les modĂšles de workflow. Si aucun workflow n’est configurĂ© pour le dĂ©pĂŽt, passez Ă  l’étape suivante.

    Capture d’écran de l’onglet Actions d’un dĂ©pĂŽt. Le bouton « Nouveau workflow Â» est indiquĂ© en orange foncĂ©.

  4. Dans la vue « Choisir un workflow Â» ou « Bien dĂ©marrer avec GitHub Actions Â», faites dĂ©filer jusqu’à la catĂ©gorie « SĂ©curitĂ© Â» et cliquez sur Configurer sous le workflow que vous souhaitez configurer. Vous devrez peut-ĂȘtre cliquer sur Tout afficher pour rechercher le workflow de sĂ©curitĂ© que vous souhaitez configurer.

    Capture d’écran montrant la catĂ©gorie SĂ©curitĂ© des modĂšles de workflow. Le bouton Configurer et le lien « Tout afficher Â» sont mis en Ă©vidence Ă  l’aide d’un rectangle orange.

  5. Suivez les instructions fournies dans le workflow pour le personnaliser selon vos besoins. Pour obtenir une aide plus générale sur les workflows, cliquez sur Documentation dans le volet droit de la page du workflow.

    Capture d’écran montrant un fichier de modĂšle de workflow ouvert Ă  la modification. Le bouton « Documentation Â» est mis en Ă©vidence Ă  l’aide d’un rectangle orange.

  6. Lorsque vous avez fini de définir votre configuration, ajoutez le nouveau flux de travail à votre branche par défaut.

    Pour plus d’informations, consultez « Utilisation de modĂšles de workflow Â» et « Personnalisation de votre configuration avancĂ©e pour l’analyse de code Â».

Étapes suivantes

Une fois que votre workflow fonctionne bien au moins une fois, vous pouvez commencer Ă  examiner et Ă  rĂ©soudre les alertes d’code scanning. Pour plus d’informations sur les alertes code scanning, consultez À propos des alertes d’analyse du code et Évaluation des alertes d’analyse du code pour votre rĂ©fĂ©rentiel.

DĂ©couvrez comment code scanning exĂ©cute des vĂ©rifications de comportement sur les demandes de tirage, consultez Triage des alertes d’analyse du code dans les demandes de tirage (pull request).

Vous trouverez des informations dĂ©taillĂ©es sur votre configuration d’code scanning, notamment des horodatages pour chaque analyse et le pourcentage de fichiers analysĂ©s, dans la page d’état de l’outil. Pour plus d’informations, consultez « Ă€ propos de la page d’état de l’outil pour l’analyse du code Â».

Pour aller plus loin