Skip to main content

À propos de l’analyse du code

Vous pouvez utiliser l’code scanning pour rechercher des vulnérabilités de sécurité et des erreurs dans le code de votre projet sur GitHub.

Qui peut utiliser cette fonctionnalité ?

Code scanning est disponible pour tous les dépôts publics sur GitHub.com. Pour utiliser code scanning dans un dépôt privé appartenant à une organisation, vous devez avoir une licence pour GitHub Advanced Security. Pour plus d’informations, consultez « À propos de GitHub Advanced Security ».

Code scanning es une fonctionnalité que vous utilisez pour analyser le code dans un dépôt GitHub afin de détecter d’éventuelles vulnérabilités de sécurité et erreurs de codage. Tous les problèmes identifiés par l’analyse sont énumérés dans votre référentiel.

Vous pouvez utiliser l’code scanning pour rechercher, trier et hiérarchiser les correctifs pour les problèmes existants dans votre code. L’Code scanning empêche également les développeurs d’introduire de nouveaux problèmes. Vous pouvez planifier des analyses pour des jours et des heures spécifiques, ou déclencher des analyses quand un événement spécifique se produit dans le dépôt, comme une poussée (push).

Si l’code scanning trouve une vulnérabilité ou une erreur potentielle dans votre code, GitHub affiche une alerte dans le dépôt. Une fois que vous avez corrigé le code qui a déclenché l’alerte, GitHub ferme celle-ci. Pour plus d’informations, consultez « Gestion des alertes d’analyse du code pour votre référentiel ».

Pour superviser les résultats de l’code scanning sur vos dépôts ou votre organisation, vous pouvez utiliser des webhooks et l’API d’code scanning. Pour plus d’informations sur les webhooks pour l’code scanning, consultez « Événements et charges utiles du webhook ». Pour plus d’informations sur les points de terminaison d’API, consultez « Points de terminaison d’API REST pour l’analyse de codes ».

Pour bien commencer avec l’code scanning, consultez « Définition de la configuration par défaut pour l’analyse du code ».

À propos de la facturation pour l’code scanning

L’Code scanning utilise GitHub Actions, et chaque exécution d’un workflow d’code scanning consomme des minutes pour GitHub Actions. Pour plus d’informations, consultez « À propos de la facturation de GitHub Actions ».

Pour utiliser code scanning dans un dépôt privé, vous devez également avoir une licence pour GitHub Advanced Security. Pour plus d’informations sur la façon dont vous pouvez essayer GitHub Advanced Security gratuitement, consultez « Configuration d’un essai de GitHub Advanced Security ».

À propos des outils pour l’code scanning

Vous pouvez configurer l’code scanning pour utiliser le produit CodeQL géré par GitHub ou un outil d’code scanning tiers.

À propos de l’analyse CodeQL

CodeQL est le moteur d’analyse de code développé par GitHub pour automatiser les vérifications de sécurité. Vous pouvez analyser votre code à l’aide de CodeQL et afficher les résultats sous forme d’alertes d’code scanning. Pour plus d’informations sur CodeQL, consultez « À propos de l’analyse du code avec CodeQL ».

À propos des outils d’code scanning tiers

L’Code scanning est interopérable avec des outils d’analyse de code tiers qui génèrent des données SARIF (Static Analysis Results Interchange Format). Le format SARIF est un standard ouvert. Pour plus d’informations, consultez « Prise en charge de SARIF pour l’analyse du code ».

Vous pouvez exécuter des outils d’analyse tiers dans GitHub Enterprise Cloud en utilisant des actions ou dans un système CI externe. Pour plus d’informations, consultez « Configuration de la configuration par défaut pour l’analyse du code » ou « Chargement d’un fichier SARIF sur GitHub ».

À propos de la page d’état de l’outil

La page d’état de l’outil affiche des informations utiles sur tous vos outils d’analyse du code. Si l’analyse du code ne fonctionne pas comme prévu, la page d’état de l’outil est un bon point de départ pour le débogage des problèmes. Pour plus d’informations, consultez « À propos de la page d’état de l’outil pour l’analyse du code ».