Affichage des alertes pour un dépôt
Toute personne disposant d’une autorisation de lecture pour un dépôt peut voir les annotations d’code scanning sur les demandes de tirage (pull request). Pour plus d’informations, consultez « Triage des alertes d’analyse du code dans les demandes de tirage (pull request) ».
Vous avez besoin d’une autorisation d’écriture pour voir un récapitulatif de toutes les alertes d’un dépôt sous l’onglet Sécurité.
Par défaut, la page des alertes d’analyse du code est filtrée pour montrer uniquement les alertes liées à la branche par défaut du dépôt.
-
Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt. 1. Sous le nom du dépôt, cliquez sur Sécurité.
1. Sur la barre latérale gauche, cliquez sur Alertes d’analyse du code. -
Si vous le souhaitez, utilisez la zone de recherche en texte libre ou les menus déroulants pour filtrer les alertes. Par exemple, vous pouvez filtrer en fonction de l’outil utilisé pour identifier les alertes.
-
Sous « Code scanning », cliquez sur l’alerte à explorer.
-
Si l’alerte met en évidence un problème avec le flux de données, vous pouvez cliquer sur Afficher les chemins pour afficher le chemin depuis la source de données vers le récepteur où il est utilisé.
-
Les alertes de l’analyse CodeQL incluent une description du problème. Cliquez sur Afficher plus pour obtenir des conseils sur la façon de corriger votre code.
Pour plus d’informations, consultez « À propos des alertes d’analyse du code ».
Remarque : Pour l’code scanning avec CodeQL, vous pouvez voir des informations sur la dernière exécution dans un en-tête en haut de la liste des alertes d’code scanning pour le dépôt.
Par exemple, vous pouvez voir quand la dernière analyse a été exécutée, le nombre de lignes de code analysées par rapport au nombre total de lignes de code dans votre dépôt et le nombre total d’alertes générées.
Filtrage des alertes d’code scanning
Vous pouvez filtrer les alertes affichées dans la vue des alertes d’code scanning. Cela est utile s’il existe de nombreuses alertes, car vous pouvez vous concentrer sur un type particulier d’alerte. Vous disposez de filtres prédéfinis et d’un éventail de mots clés pour affiner la liste des alertes affichées.
Lorsque vous sélectionnez un mot clé dans une liste déroulante ou lorsque vous entrez une mot clé dans le champ de recherche, seules les valeurs avec des résultats s’affichent. Vous évitez ainsi plus facilement de définir des filtres qui ne trouvent aucun résultat.
Si vous entrez plusieurs filtres, l’affichage montre les alertes correspondant à tous ces filtres. Par exemple, is:closed severity:high branch:main
affiche uniquement les alertes de gravité élevée fermées qui sont présentes sur la branche main
. L’exception concerne les filtres relatifs aux références (ref
, branch
et pr
) : is:open branch:main branch:next
vous montre les alertes ouvertes à la fois sur la branche main
et sur la branche next
.
Vous pouvez préfixer le filtre tag
avec -
pour exclure les résultats ayant cette étiquette. Par exemple, -tag:style
montre uniquement les alertes qui n’ont pas l’étiquette style
.
Restriction des résultats au code d’application uniquement
Vous pouvez utiliser le filtre « Uniquement les alertes dans le code d’application » ou la paire mot clé/valeur autofilter:true
pour restreindre les résultats aux alertes dans le code d’application. Pour plus d’informations, consultez « À propos des étiquettes pour les alertes qui ne se trouvent pas dans le code d’application » ci-dessus pour plus d’informations sur les types de code qui ne sont pas du code d’application.
Exploration des alertes d’code scanning
Vous pouvez explorer la liste des alertes. Cela est utile s’il existe un grand nombre d’alertes dans votre dépôt ou si vous ne connaissez pas le nom exact d’une alerte, par exemple. GitHub Enterprise Server effectue la recherche en texte libre dans les éléments suivants :
- Nom de l'alerte
- Détails de l’alerte (comprenant aussi les informations masquées par défaut dans la section réductible Afficher plus)
Recherche prise en charge | Exemple de syntaxe | Résultats |
---|---|---|
Recherche avec un seul mot | injection | Retourne toutes les alertes contenant le mot injection |
Recherche avec plusieurs mots | sql injection | Retourne toutes les alertes contenant sql ou injection |
Recherche de correspondance exacte (utilisez des guillemets doubles) | "sql injection" | Retourne toutes les alertes contenant l’expression exacte sql injection |
Recherche OU | sql OR injection | Retourne toutes les alertes contenant sql ou injection |
Recherche ET | sql AND injection | Retourne toutes les alertes contenant à la fois les mots sql et injection |
Conseils :
- La recherche avec sur plusieurs mots équivaut à une recherche OU.
- La recherche ET retourne des résultats dans lesquels les termes de recherche se trouvent n’importe où, dans n’importe quel ordre dans le nom ou les détails de l’alerte.
- Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt. 1. Sous le nom du dépôt, cliquez sur Sécurité.
1. Sur la barre latérale gauche, cliquez sur Alertes d’analyse du code. - À droite des menus déroulants Filtres, tapez les mots clés à rechercher dans la zone de recherche en texte libre.
- Appuyez sur Entrée. La liste des alertes contient les alertes d’code scanning ouvertes correspondant à vos critères de recherche.
Correction d’une alerte
Toute personne disposant d’une autorisation d’écriture pour un dépôt peut corriger une alerte en commitant une correction dans le code. Si le dépôt a une code scanning planifiée pour s’exécuter sur les demandes de tirage (pull request), il est préférable de déclencher une demande de tirage avec votre correction. Cela déclenche une code scanning des modifications et vérifie que votre correctif n’introduit aucun nouveau problème. Pour plus d’informations, consultez « Personnalisation de l’analyse du code » et « Triage des alertes d’analyse du code dans les demandes de tirage (pull request) ».
Si vous disposez d’une autorisation d’écriture pour un dépôt, vous pouvez voir les alertes corrigées en affichant le récapitulatif des alertes et en cliquant sur Fermées. Pour plus d’informations, consultez « Affichage des alertes pour un dépôt ». La liste « Fermées » affiche les alertes corrigées et les alertes que les utilisateurs ont ignorées.
Vous pouvez utiliser la recherche en texte libre ou les filtres pour afficher un sous-ensemble d’alertes, puis marquer toutes les alertes correspondantes comme fermées.
Les alertes peuvent être corrigées dans une branche, mais pas dans une autre. Vous pouvez utiliser le filtre « Branche », dans le récapitulatif des alertes, pour vérifier si une alerte est corrigée dans une branche particulière.
Ignorer ou supprimer les alertes
Il existe deux façons de fermer une alerte. Vous pouvez résoudre le problème dans le code ou ignorer l’alerte. Vous pouvez également supprimer des alertes si vous disposez d’autorisations d’administrateur pour le référentiel. La suppression d’alertes est utile dans les situations où vous avez configuré un outil d’code scanning, puis décidé de le supprimer, ou dans lesquelles vous avez configuré l’analyse CodeQL avec un ensemble de requêtes trop grand au point d’avoir supprimé certaines requêtes de l’outil. Dans les deux cas, la suppression d’alertes vous permet de nettoyer les résultats de votre code scanning. Vous pouvez supprimer des alertes de la liste récapitulative sous l’onglet Sécurité.
Le rejet d'une alerte est un moyen de fermer une alerte qui, selon vous, ne doit pas être corrigée. Par exemple, dans le cas d’une erreur présente dans du code utilisé uniquement à des fins de test, ou quand l’effort de correction de l’erreur est supérieur à l’avantage potentiel que représente l’amélioration du code. Vous pouvez ignorer des alertes à partir des annotations d’code scanning dans le code ou de la liste récapitulative sous l’onglet Sécurité.
Quand vous ignorez une alerte :
- Elle est ignorée dans toutes les branches.
- L’alerte est supprimée du nombre d’alertes actuel pour votre projet.
- L’alerte est déplacée vers la liste « Fermées » dans le récapitulatif des alertes. Vous pouvez la rouvrir depuis cet endroit, si nécessaire.
- La raison pour laquelle vous avez fermé l’alerte est enregistrée.
- La prochaine fois que l’code scanning s’exécute, le même code ne génère pas d’alerte.
Quand vous supprimez une alerte :
- Elle est supprimée de toutes les branches.
- L’alerte est supprimée du nombre d’alertes actuel pour votre projet.
- Elle n’est pas ajoutée à la liste « Fermées » dans le récapitulatif des alertes.
- Si le code qui a généré l’alerte reste le même et que le même outil d’code scanning se réexécute sans modification de la configuration, l’alerte réapparaît dans les résultats de votre analyse.
Pour ignorer ou supprimer les alertes :
-
Dans votre instance GitHub Enterprise Server, accédez à la page principale du dépôt. 1. Sous le nom du dépôt, cliquez sur Sécurité.
1. Sur la barre latérale gauche, cliquez sur Alertes d’analyse du code. -
Si vous disposez d’autorisations d’administrateur pour le dépôt et que vous souhaitez supprimer des alertes pour cet outil d’code scanning, cochez certaines cases ou toutes les cases, puis cliquez sur Supprimer.
Vous pouvez également utiliser la recherche en texte libre ou les filtres pour afficher un sous-ensemble d’alertes, puis supprimer toutes les alertes correspondantes simultanément. Par exemple, si vous avez supprimé une requête de l’analyse CodeQL, vous pouvez utiliser le filtre « Règle » pour lister uniquement les alertes pour cette requête, puis sélectionner et supprimer toutes ces alertes.
-
Si vous souhaitez ignorer une alerte, il est important d’explorer l’alerte en premier, afin que vous puissiez choisir la bonne raison de l’ignorer. Cliquez sur l’alerte que vous voulez explorer.
-
Passez en revue l’alerte, puis cliquez sur Ignorer et choisissez une raison de fermer l’alerte.
Il est important de choisir le motif approprié dans le menu déroulant, car cela peut avoir une incidence sur l’inclusion ou non d’une requête dans une analyse future.Si vous ignorez une alerte CodeQL que vous considérez comme un résultat faux positif, par exemple parce que le code utilise une bibliothèque d’assainissement qui n’est pas prise en charge, envisagez de contribuer au dépôt CodeQL et d’améliorer l’analyse. Pour plus d’informations sur CodeQL, consultez « Contribution à CodeQL ».
Ignorer plusieurs alertes à la fois
Si un projet a plusieurs alertes que vous souhaitez ignorer pour la même raison, vous pouvez les ignorer en bloc à partir du récapitulatif des alertes. En règle générale, vous souhaitez filtrer la liste, puis ignorer toutes les alertes correspondantes. Par exemple, vous souhaiterez peut-être ignorer toutes les alertes actuelles dans le projet qui ont été marquées pour une vulnérabilité CWE (Common Weakness Enumeration) particulière.
Audit des réponses aux alertes d’code scanning
Vous pouvez auditer les actions effectuées en réponse aux alertes code scanning à l’aide des outils GitHub. Pour plus d’informations, consultez « Audit des alertes de sécurité ».