À propos de la configuration par défaut
La configuration par défaut de l’code scanning est la méthode la plus rapide, la plus simple et la moins exigeante en termes de maintenance pour activer l’code scanning sur votre dépôt. En fonction du code contenu dans votre dépôt, la configuration par défaut crée automatiquement une configuration d’code scanning personnalisée. Une fois l’installation par défaut activée, le code écrit dans les langages pris en charge par CodeQL dans votre référentiel sera analysé :
- À chaque envoi (push) vers la branche par défaut du référentiel, ou toute branche protégée. Pour plus d’informations sur les branches protégées, consultez À propos des branches protégées.
- Lors de la création ou de la validation d'une demande d'extraction basée sur la branche par défaut du référentiel, ou toute branche protégée, à l'exclusion des demandes d'extraction provenant de forks.
Vous pouvez également activer la configuration par défaut pour plusieurs ou tous les référentiels d’une organisation en même temps. Pour plus d’informations sur l’activation en bloc, consultez Définition de la configuration par défaut pour l’analyse du code à grande échelle.
Si vous avez besoin d’exercer un contrôle plus précis sur la configuration de l’code scanning, définissez plutôt une configuration avancée. Pour plus d’informations, consultez « Configuration de la configuration par défaut pour l’analyse du code ».
Exigences relatives à l’utilisation de la configuration par défaut
Votre dépôt est éligible à la configuration par défaut de code scanning si :
- Il inclut au moins un langage pris en charge par CodeQL autre que Swift.
- GitHub Actions est activé.
- GitHub Advanced Security est activé.
Si votre référentiel comprend au moins un langage pris en charge par CodeQL, vous pouvez utiliser la configuration par défaut même si votre référentiel comprend également des langages qui ne sont pas pris en charge par CodeQL, tels que R. Les langages non pris en charge ne seront pas analysés par la configuration par défaut. Pour plus d’informations sur les langages pris en charge par CodeQL, consultez À propos de l’analyse du code avec CodeQL.
Vous pouvez utiliser la configuration par défaut pour tous les langages pris en charge par CodeQL sauf Swift pour les exécuteurs auto-hébergés ou les exécuteurs hébergés par GitHub. Consultez Attribuer des étiquettes aux exécuteurs plus loin dans cet article.
La configuration par défaut exécute l’action autobuild
. Vous devez donc configurer vos exécuteurs auto-hébergés pour vous assurer qu’ils peuvent exécuter toutes les commandes nécessaires pour l’analyse C/C++, C#, Go, Java, Kotlin et Swift. L’analyse du code JavaScript/TypeScript, Go, Ruby, Python et Kotlin ne nécessite actuellement aucune configuration spéciale.
Personnalisation de la configuration par défaut
Nous vous recommandons de commencer à utiliser code scanning avec le programme d’installation par défaut. Une fois que vous avez initialement configuré la configuration par défaut, vous pouvez évaluer code scanning pour voir comment cela fonctionne pour vous. Si vous constatez que quelque chose ne fonctionne pas comme prévu, vous pouvez personnaliser la configuration par défaut afin de mieux répondre à vos besoins en matière de sécurité du code. Pour plus d’informations, consultez « Évaluation de la configuration par défaut pour l’analyse du code ».
À propos de l’ajout de langages compilés à votre configuration par défaut
Les langages compilés ne sont pas automatiquement inclus dans la définition de la configuration par défaut car ils nécessitent souvent une configuration plus avancée, mais vous pouvez sélectionner manuellement n’importe quel langage compilé pris en charge par autre que Swift pour l’analyse.
Définition de l’installation par défaut pour un référentiel
Note
Au moins une analyse de langage pris en charge par CodeQL dans un référentiel doit réussir, sinon la configuration par défaut ne sera pas activée avec succès dans ce référentiel.
-
Sur GitHub, accédez à la page principale du référentiel.
Note
Si vous configurez l’installation par défaut sur une duplication, vous devez d’abord activer GitHub Actions. Pour activer GitHub Actions, sous le nom de votre référentiel, cliquez sur Actions, puis cliquez sur Je comprends mes flux de travail, allez de avant et activez-les. N’oubliez pas que cette action active tous les flux de travail existants sur votre fork.
-
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.
-
Dans la section « Sécurité » de la barre latérale, cliquez sur Sécurité et analyse du code.
-
Dans la section « Code scanning », sélectionnez Configuration , puis cliquez sur Par défaut.
Vous voyez alors une boîte de dialogue « Configuration par défaut de CodeQL » qui résume la définition de l’code scanning créée automatiquement par la configuration par défaut.
Note
Si votre référentiel contient uniquement des langages compilés pris en charge par CodeQL (par exemple, Java), vous êtes redirigé vers la page des paramètres pour sélectionner les langages que vous souhaitez ajouter à la configuration par défaut.
-
Vous pouvez également personnaliser votre installation code scanning en cliquant sur Modifier.
- Pour ajouter ou supprimer un langage de l’analyse effectuée par la configuration par défaut, sélectionnez ou désélectionnez ce langage dans la section « Langages ». Si vous souhaitez analyser un langage compilé pris en charge par CodeQL avec configuration par défaut, sélectionnez ce langage ici.
- Pour spécifier la suite de requêtes CodeQL que vous souhaitez utiliser, sélectionnez votre suite de requêtes préférée dans la section « Suites de requêtes ».
-
Passez en revue les paramètres de l’installation par défaut sur votre référentiel, puis cliquez sur Activer CodeQL. Cela va déclencher un flux de travail permettant de tester la nouvelle configuration générée automatiquement.
Note
Si vous passez de la configuration avancée à la configuration par défaut, un avertissement s’affiche pour vous informer que la configuration par défaut va remplacer les configurations d’code scanning existantes. Cet avertissement signifie que la configuration par défaut va désactiver le fichier de workflow existant et bloquer les chargements d’API d’analyse CodeQL.
-
Si vous souhaitez voir votre configuration par défaut une fois celle-ci activée, sélectionnez , puis cliquez sur Voir la configuration de CodeQL .
Attribuer des étiquettes aux exécuteurs
Note
Code scanning voit les exécuteurs attribués lorsque la configuration par défaut est activée. Si un exécuteur est assigné à un référentiel qui utilise déjà la configuration par défaut, vous devez désactiver et réactiver la configuration par défaut pour commencer à utiliser l’exécuteur. Si vous ajoutez un exécuteur et souhaitez commencer à l’utiliser, vous pouvez modifier la configuration manuellement sans avoir à désactiver et réactiver la configuration par défaut.
Vous pouvez également attribuer aux exécuteurs auto-hébergésavec l’étiquette code-scanning
. Pour plus d’informations sur l’attribution d’étiquettes aux exécuteurs auto-hébergés, consultez Utilisation d’étiquettes avec des exécuteurs auto-hébergés.
Étapes suivantes
Une fois que votre configuration fonctionne bien au moins une fois, vous pouvez commencer à examiner et à résoudre les alertes 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.
Une fois que vous avez configuré l’installation par défaut pour code scanning, vous pouvez vous informer sur l’évaluation de son fonctionnement et sur les prochaines étapes à suivre pour la personnaliser. Pour plus d’informations, consultez « Évaluation de la configuration par défaut pour l’analyse du code ».
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 ».
Quand vous définissez la configuration par défaut, vous pouvez rencontrer une erreur. Pour plus d’informations sur la résolution des problèmes spécifiques, consultez Résolution des problèmes d’analyse du code.