Skip to main content

Modification de la configuration d’installation par défaut

Vous pouvez modifier la configuration par défaut existante pour code scanning afin de mieux répondre à vos besoins.

Qui peut utiliser cette fonctionnalité ?

Propriétaires de l’organisation, gestionnaires de sécurité et membres de l’organisation avec le rôle d’administrateur

Après avoir exécuté une analyse initiale de votre code avec la configuration par défaut, vous pouvez apporter des modifications à votre configuration pour mieux répondre à vos besoins. Voir À propos des types d’installation pour l’analyse du code et Propriétés du référentiel pour code scanning.

Personnalisation de votre configuration existante de l’installation par défaut

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

  2. Sous le nom de votre référentiel, 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. Dans la ligne «CodeQL analysis » de la section «Code Security », sélectionnez , puis cliquez sur Afficher CodeQL la configuration.

  5. Dans la fenêtre «CodeQL configuration par défaut », cliquez sur Modifier.

  6. Si vous le souhaitez, dans la section « Langues », sélectionnez ou désélectionnez les langues pour l’analyse.

  7. Vous pouvez également sélectionner une autre suite de requêtes à exécuter sur votre code dans la ligne « Suite de requêtes » de la section « Paramètres d’analyse ».

  8. Si vous le souhaitez, pour utiliser des exécuteurs étiquetés, dans la section « Type d’exécuteur » de la boîte de dialogue modale «CodeQL configuration par défaut », sélectionnez Exécuteur Standard GitHub pour ouvrir un menu déroulant, puis sélectionnez .**** Ensuite, à côté de « étiquette Runner », entrez l’étiquette d’un exécuteur auto-hébergé ou GitHub-hébergé existant. Pour plus d’informations, consultez « Définition de la configuration par défaut pour l’analyse du code ».

  9. (Préversion publique) Si vous le souhaitez, dans la ligne « Modèle de menace » de la section « Paramètres d’analyse », sélectionnez Sources distantes et locales. Cette option est disponible uniquement pour les référentiels avec du code dans une langue prise en charge : Java/Kotlin et C#.

  10. Pour mettre à jour votre configuration, ainsi qu’exécuter une analyse initiale de votre code avec la nouvelle configuration, cliquez sur Enregistrer les modifications. Toutes les analyses futures utiliseront votre nouvelle configuration.

Définir les gravités d’alerte qui provoquent un échec de vérification d’une demande de tirage

Vous pouvez utiliser des ensembles de règles pour empêcher la fusion des demandes de tirage (pull request) lorsque l’une des conditions suivantes est remplie :

  • Un outil requis détecte une alerte code scanning dont la gravité est spécifiée dans l’ensemble de règles.
  • L’analyse d’un outil requis est toujours en cours.
  • Un outil requis n’est pas configuré pour le référentiel.

Pour plus d’informations, consultez « Définir la protection contre la fusion d’analyse du code ». Pour plus d’informations générales sur les ensembles de règles, consultez À propos des ensembles de règles.

Inclure les sources locales de données souillées dans la configuration par défaut

Remarque

Les modèles de menace se trouvent actuellement en préversion publique et peuvent être amenés à changer. Pendant la préversion publique, les modèles de risque ne sont pris en charge que par l’analyse pour Java/Kotlin et C#.

Si votre codebase ne tient compte que des demandes réseau à distance comme sources potentielles de données souillées, nous vous recommandons d’utiliser le modèle de risque par défaut. Si votre codebase considère les sources autres que les requêtes réseau pour contenir potentiellement des données teintes, vous pouvez utiliser des modèles de menace pour ajouter ces sources supplémentaires à votre CodeQL analyse. Pendant le préversion publique, vous pouvez ajouter des sources locales (par exemple : arguments de ligne de commande, variables d’environnement, systèmes de fichiers et bases de données) que votre base de code peut considérer comme des sources supplémentaires de données teintes.

Vous pouvez modifier le modèle de risque utilisé dans une configuration par défaut. Pour plus d’informations, consultez Personnalisation de votre configuration existante de l’installation par défaut.

Extension de CodeQL couverture avec CodeQL packs de modèles dans la configuration par défaut

Remarque

Les packs de modèles CodeQL sont actuellement en préversion publique et peuvent faire l’objet de modifications. Les packs de modèles sont pris en charge pour l’analyse C/C++, C#, Java/Kotlin, Python, Ruby et Rust.

L’éditeur de modèle CodeQL de l’extension CodeQL pour Visual Studio Code prend en charge les dépendances de modélisation pour C#, Java/Kotlin, Python et Ruby.

Si votre entreprise est hébergée sur GitHub.com et que vous utilisez des frameworks et des bibliothèques qui ne sont pas reconnus par les bibliothèques standard incluses avec CodeQL, vous pouvez modéliser vos dépendances et étendre l’analyse code scanning. Pour plus d’informations, consultez les langages et infrastructures pris en charge dans la documentation pour CodeQL.

Pour la configuration par défaut, vous devez définir les modèles de vos dépendances supplémentaires dans CodeQL les packs de modèles. Vous pouvez étendre la couverture dans la configuration par défaut avec CodeQL des packs de modèles pour des référentiels individuels ou à grande échelle pour tous les référentiels d’une organisation.

Pour plus d’informations sur les packs de modèles CodeQL et pour créer vos propres packs, consultez Utiliser l'éditeur de modèles CodeQL.

Extension de la couverture d’un référentiel

  1. Dans le répertoire .github/codeql/extensions du référentiel, copiez le répertoire du pack de modèles qui doit inclure un fichier codeql-pack.yml et tous les fichiers .yml contenant des modèles supplémentaires pour les bibliothèques ou les cadres que vous souhaitez inclure dans votre analyse.
  2. Les packs de modèles sont automatiquement détectés et utilisés dans votre code scanning analyse.
  3. Si vous modifiez ultérieurement votre configuration pour utiliser la configuration avancée, tous les packs de modèles dans le répertoire .github/codeql/extensions seront toujours reconnus et utilisés.

Extension de la couverture pour tous les référentiels d’une organisation

Remarque

Si vous étendez la couverture avec CodeQL des packs de modèles pour tous les référentiels d’une organisation, les packs de modèles que vous spécifiez doivent être publiés dans le GitHubContainer registry et être accessibles aux référentiels qui s’exécutent.code scanning Pour plus d’informations, consultez « Utilisation du registre de conteneurs ».

  1. Dans le coin supérieur droit de GitHub, cliquez sur votre photo de profil, puis sur Vos organisations.

  2. Sous le nom de votre organisation, cliquez sur Settings. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.

    Capture d’écran des onglets dans le profil d’une organisation. L’onglet « Paramètres » est présenté en orange foncé.

  3. Dans la section « Sécurité » de la barre latérale, cliquez sur Advanced Security puis Paramètres globaux.

  4. Recherchez la section «Code scanning ».

  5. En regard de « Développer CodeQL l’analyse », cliquez sur Configurer.

  6. Entrez des références aux packs de modèles publiés que vous souhaitez utiliser, une par ligne, puis cliquez sur Enregistrer.

    Capture d’écran de la vue « Étendre l’analyse CodeQL » dans les paramètres d’une organisation.

  7. Les packs de modèles sont automatiquement détectés et utilisés lors code scanning de l’exécution sur n’importe quel référentiel de l’organisation avec l’installation par défaut activée.

Options de personnalisation supplémentaires

Si vous devez modifier d’autres aspects de votre code scanning configuration, envisagez de configurer une configuration avancée. Consultez « Configuration avancée de l’analyse du code ».