{"id":8064,"date":"2025-09-18T09:13:14","date_gmt":"2025-09-18T09:13:14","guid":{"rendered":"https:\/\/techhub.saworks.io\/?post_type=docs&#038;p=8064"},"modified":"2025-09-24T12:02:34","modified_gmt":"2025-09-24T12:02:34","slug":"comprendre-les-resultats-de-codeql","status":"publish","type":"docs","link":"https:\/\/techhub.saworks.io\/fr\/docs\/tutoriel-github-intermediaire\/securite-avancee-de-github-partie-2-sur-2\/comprendre-les-resultats-de-codeql\/","title":{"rendered":"Comprendre les r\u00e9sultats de CodeQL"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<p>Dans les unit\u00e9s pr\u00e9c\u00e9dentes, vous avez cr\u00e9\u00e9 une base de donn\u00e9es et analys\u00e9 le fichier extrait de votre code. Vous pouvez maintenant <strong>consulter les r\u00e9sultats<\/strong> et d\u00e9terminer s\u2019il existe des <strong>vuln\u00e9rabilit\u00e9s de s\u00e9curit\u00e9<\/strong> \u00e0 corriger.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Afficher les r\u00e9sultats de l\u2019analyse CodeQL<\/strong><\/h3>\n\n\n\n<p>Les r\u00e9sultats des requ\u00eates interpr\u00e9t\u00e9es sont automatiquement affich\u00e9s <strong>dans le code source<\/strong> via l\u2019extension CodeQL pour <strong>Visual Studio Code<\/strong>. Les r\u00e9sultats g\u00e9n\u00e9r\u00e9s par le <strong>CodeQL CLI<\/strong> peuvent \u00eatre export\u00e9s dans plusieurs formats, compatibles avec divers outils.<\/p>\n\n\n\n<p>Vous pouvez <strong>contr\u00f4ler l\u2019affichage des r\u00e9sultats<\/strong> dans le code source en modifiant la clause <code>select<\/code> d\u2019une requ\u00eate. Cela permet de rendre les r\u00e9sultats clairs et compr\u00e9hensibles pour les autres utilisateurs pendant le d\u00e9veloppement de la requ\u00eate.<\/p>\n\n\n\n<p>Lorsque vous \u00e9crivez vos propres requ\u00eates dans la console de requ\u00eates ou dans l\u2019extension CodeQL pour VS Code, il n\u2019y a <strong>aucune contrainte<\/strong> sur ce que vous pouvez s\u00e9lectionner.<\/p>\n\n\n\n<p>\ud83d\udc49 Si vous souhaitez utiliser une requ\u00eate pour <strong>g\u00e9n\u00e9rer des alertes dans l\u2019analyse de code GitHub<\/strong> ou produire des r\u00e9sultats valides via le CLI CodeQL, vous devez formater la clause <code>select<\/code> selon les exigences du syst\u00e8me.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Agir sur les alertes d\u2019analyse de code<\/strong><\/h3>\n\n\n\n<p>Vous pouvez configurer l\u2019analyse de code pour v\u00e9rifier le contenu d\u2019un d\u00e9p\u00f4t. Vous pouvez utiliser :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>l\u2019analyse CodeQL par d\u00e9faut,<\/li>\n\n\n\n<li>un outil d\u2019analyse non-Microsoft,<\/li>\n\n\n\n<li>ou d\u2019autres types d\u2019analyse.<\/li>\n<\/ul>\n\n\n\n<p>Les alertes g\u00e9n\u00e9r\u00e9es sont affich\u00e9es <strong>ensemble<\/strong> dans le d\u00e9p\u00f4t.<\/p>\n\n\n\n<p>L\u2019analyse CodeQL par d\u00e9faut de GitHub peut inclure <strong>plus de propri\u00e9t\u00e9s<\/strong> pour les alertes que les outils non-Microsoft ou les requ\u00eates personnalis\u00e9es. Dans un workflow par d\u00e9faut, l\u2019analyse de code examine votre code <strong>p\u00e9riodiquement<\/strong> sur la branche principale et <strong>lors des pull requests<\/strong>.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Chaque alerte inclut les informations suivantes :<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Le <strong>probl\u00e8me d\u00e9tect\u00e9<\/strong> dans le code et le <strong>nom de l\u2019outil<\/strong> qui l\u2019a identifi\u00e9.<\/li>\n\n\n\n<li>La <strong>ligne de code<\/strong> ayant d\u00e9clench\u00e9 l\u2019alerte.<\/li>\n\n\n\n<li>Les <strong>propri\u00e9t\u00e9s de l\u2019alerte<\/strong>, comme la <strong>gravit\u00e9<\/strong>.<\/li>\n\n\n\n<li>La <strong>gravit\u00e9 en mati\u00e8re de s\u00e9curit\u00e9<\/strong>.<\/li>\n\n\n\n<li>Le <strong>moment o\u00f9 le probl\u00e8me a \u00e9t\u00e9 introduit<\/strong>.<\/li>\n\n\n\n<li>La <strong>nature du probl\u00e8me<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>L\u2019analyse CodeQL fournit \u00e9galement des <strong>informations sur la mani\u00e8re de corriger<\/strong> le probl\u00e8me lorsqu\u2019une alerte est identifi\u00e9e. De plus, l\u2019analyse CodeQL peut d\u00e9tecter des <strong>probl\u00e8mes de flux de donn\u00e9es<\/strong> dans votre code.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"907\" height=\"471\" data-src=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/09\/code-scanning-alert-screenshot-1.png\" alt=\"\" class=\"wp-image-8066 lazyload\" data-srcset=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/09\/code-scanning-alert-screenshot-1.png 907w, https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/09\/code-scanning-alert-screenshot-1-300x156.png 300w, https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/09\/code-scanning-alert-screenshot-1-768x399.png 768w\" data-sizes=\"(max-width: 907px) 100vw, 907px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 907px; --smush-placeholder-aspect-ratio: 907\/471;\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Alertes de flux de donn\u00e9es (Data-flow alerts)<\/strong><\/h3>\n\n\n\n<p>L\u2019analyse de flux de donn\u00e9es permet de d\u00e9tecter des <strong>probl\u00e8mes de s\u00e9curit\u00e9 potentiels<\/strong> dans le code, notamment :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>L\u2019utilisation de donn\u00e9es d\u2019une mani\u00e8re qui compromet la s\u00e9curit\u00e9.<\/li>\n\n\n\n<li>Le passage d\u2019arguments dangereux \u00e0 des fonctions.<\/li>\n\n\n\n<li>La fuite d\u2019informations sensibles.<\/li>\n<\/ul>\n\n\n\n<p>GitHub vous montre <strong>comment les donn\u00e9es circulent dans le code<\/strong> lorsque l\u2019analyse de code signale des alertes de flux de donn\u00e9es. Ces alertes vous aident \u00e0 <strong>identifier les zones de votre code<\/strong> o\u00f9 des informations sensibles peuvent \u00eatre expos\u00e9es. Cette connaissance peut vous permettre de rep\u00e9rer les <strong>points d\u2019entr\u00e9e d\u2019attaques<\/strong> par des utilisateurs malveillants.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Niveaux de gravit\u00e9<\/strong><\/h3>\n\n\n\n<p>Tout r\u00e9sultat d\u2019analyse de code ayant une gravit\u00e9 de <strong>Erreur (Error)<\/strong> entra\u00eene par d\u00e9faut l\u2019\u00e9chec du contr\u00f4le.<br>Les niveaux de gravit\u00e9 des alertes sont :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Erreur (Error)<\/strong><\/li>\n\n\n\n<li><strong>Avertissement (Warning)<\/strong><\/li>\n\n\n\n<li><strong>Remarque (Note)<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Vous pouvez sp\u00e9cifier le niveau de gravit\u00e9 \u00e0 partir duquel une <strong>pull request<\/strong> doit \u00e9chouer lorsqu\u2019elle d\u00e9clenche une alerte d\u2019analyse de code.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Niveaux de gravit\u00e9 en mati\u00e8re de s\u00e9curit\u00e9<\/strong><\/h3>\n\n\n\n<p>Les requ\u00eates de s\u00e9curit\u00e9 g\u00e9n\u00e9r\u00e9es par l\u2019analyse de code affichent des <strong>niveaux de gravit\u00e9 de s\u00e9curit\u00e9<\/strong> pour les alertes :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Critique (Critical)<\/strong><\/li>\n\n\n\n<li><strong>\u00c9lev\u00e9e (High)<\/strong><\/li>\n\n\n\n<li><strong>Moyenne (Medium)<\/strong><\/li>\n\n\n\n<li><strong>Faible (Low)<\/strong><\/li>\n<\/ul>\n\n\n\n<p>GitHub utilise les donn\u00e9es du <strong>Common Vulnerability Scoring System (CVSS)<\/strong> pour calculer la gravit\u00e9 de s\u00e9curit\u00e9 d\u2019une alerte.<\/p>\n\n\n\n<p>Tout r\u00e9sultat ayant une gravit\u00e9 de s\u00e9curit\u00e9 <strong>Critique ou \u00c9lev\u00e9e<\/strong> entra\u00eene par d\u00e9faut l\u2019\u00e9chec du contr\u00f4le.<br>Vous pouvez d\u00e9finir quel niveau de gravit\u00e9 de s\u00e9curit\u00e9 doit provoquer l\u2019\u00e9chec d\u2019un contr\u00f4le.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Fermer une alerte d\u2019analyse de code<\/strong><\/h3>\n\n\n\n<p>Il existe deux fa\u00e7ons de fermer une alerte :<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Corriger le probl\u00e8me<\/strong> dans le code.<\/li>\n\n\n\n<li><strong>Ignorer ou supprimer<\/strong> l\u2019alerte.<\/li>\n<\/ol>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Ignorer une alerte d\u2019analyse de code<\/strong><\/h3>\n\n\n\n<p>Ignorer une alerte permet de la fermer lorsqu\u2019on estime qu\u2019elle <strong>ne n\u00e9cessite pas de correction<\/strong>.<br>Par exemple :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Une erreur dans du code utilis\u00e9 uniquement pour les tests.<\/li>\n\n\n\n<li>Une correction dont le co\u00fbt d\u00e9passe les b\u00e9n\u00e9fices attendus.<\/li>\n<\/ul>\n\n\n\n<p>Vous pouvez ignorer une alerte depuis les <strong>annotations dans le code<\/strong> ou depuis la <strong>liste r\u00e9capitulative<\/strong> dans l\u2019onglet <strong>S\u00e9curit\u00e9<\/strong>.<br>Pour ignorer une alerte depuis la liste :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>S\u00e9lectionnez le menu <strong>Ignorer l\u2019alerte (Dismiss alert)<\/strong>.<\/li>\n\n\n\n<li>Choisissez une <strong>raison<\/strong> pour l\u2019ignorer.<\/li>\n\n\n\n<li>Cliquez sur le bouton <strong>Ignorer l\u2019alerte (Dismiss alert)<\/strong>.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"516\" height=\"292\" data-src=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/09\/code-scanning-alert-dismissal-1.gif\" alt=\"\" class=\"wp-image-8068 lazyload\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 516px; --smush-placeholder-aspect-ratio: 516\/292;\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Lorsque vous ignorez une alerte :<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>L\u2019alerte est ignor\u00e9e <strong>dans toutes les branches<\/strong> du d\u00e9p\u00f4t.<\/li>\n\n\n\n<li>Elle est <strong>retir\u00e9e du nombre d\u2019alertes actives<\/strong> pour votre projet.<\/li>\n\n\n\n<li>Elle est d\u00e9plac\u00e9e dans la <strong>liste des alertes ferm\u00e9es<\/strong> dans le r\u00e9sum\u00e9. Vous pouvez la <strong>rouvrir<\/strong> \u00e0 partir de cette liste si n\u00e9cessaire.<\/li>\n\n\n\n<li>La <strong>raison de la fermeture<\/strong> de l\u2019alerte est enregistr\u00e9e.<\/li>\n\n\n\n<li>Lors de la prochaine ex\u00e9cution de l\u2019analyse de code, <strong>le m\u00eame code ne g\u00e9n\u00e9rera pas une nouvelle alerte<\/strong>.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Supprimer une alerte d\u2019analyse de code<\/strong><\/h3>\n\n\n\n<p>Vous pouvez <strong>supprimer une alerte<\/strong> si vous avez les <strong>droits administrateur<\/strong> sur le d\u00e9p\u00f4t. La suppression d\u2019alertes est utile dans les cas suivants :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Vous avez configur\u00e9 un outil d\u2019analyse de code, mais vous d\u00e9cidez ensuite de le retirer.<\/li>\n\n\n\n<li>Vous avez configur\u00e9 l\u2019analyse CodeQL avec un ensemble de requ\u00eates plus large que celui que vous souhaitez continuer \u00e0 utiliser.<\/li>\n\n\n\n<li>Vous avez retir\u00e9 certaines requ\u00eates de l\u2019outil.<\/li>\n\n\n\n<li>Vous souhaitez <strong>nettoyer les r\u00e9sultats<\/strong> de l\u2019analyse de code.<\/li>\n<\/ul>\n\n\n\n<p>Vous pouvez supprimer des alertes depuis la <strong>liste r\u00e9capitulative<\/strong> dans l\u2019onglet <strong>S\u00e9curit\u00e9<\/strong>.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Lorsque vous supprimez une alerte :<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>L\u2019alerte est supprim\u00e9e <strong>dans toutes les branches<\/strong>.<\/li>\n\n\n\n<li>Elle est <strong>retir\u00e9e du nombre d\u2019alertes actives<\/strong> pour votre projet.<\/li>\n\n\n\n<li>Elle <strong>n\u2019est pas ajout\u00e9e<\/strong> \u00e0 la liste des alertes ferm\u00e9es.<\/li>\n\n\n\n<li>L\u2019alerte peut <strong>r\u00e9appara\u00eetre<\/strong> dans les r\u00e9sultats d\u2019analyse si le code \u00e0 l\u2019origine de l\u2019alerte reste inchang\u00e9 et que le m\u00eame outil d\u2019analyse est ex\u00e9cut\u00e9 \u00e0 nouveau <strong>sans modification de configuration<\/strong>.<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Dans les unit\u00e9s pr\u00e9c\u00e9dentes, vous avez cr\u00e9\u00e9 une base de donn\u00e9es et analys\u00e9 le fichier extrait de votre code. Vous pouvez maintenant consulter [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":8024,"menu_order":60,"template":"","doc_tag":[],"doc_badge":[],"class_list":["post-8064","docs","type-docs","status-publish","hentry"],"author_avatar":"https:\/\/secure.gravatar.com\/avatar\/6a70e7c73db9f245e650948d09d74f61?s=96&d=mm&r=g","author_name":"Annick N'dri","_links":{"self":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/8064"}],"collection":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/users\/2"}],"version-history":[{"count":0,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/8064\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/8024"}],"wp:attachment":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/media?parent=8064"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/doc_tag?post=8064"},{"taxonomy":"doc_badge","embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/doc_badge?post=8064"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}