For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navigation principale
Theme
Codex

Codex use case

Analyse de plusieurs dépôts

Lancez des analyses de sécurité sur plusieurs dépôts, puis examinez les problèmes détectés et la couverture des analyses.

Difficulty Intermediate
Time horizon Long-running

Utilisez la CLI de Codex Security pour analyser chaque dépôt d’une liste à un commit précis. Examinez chaque résultat pour déterminer les points à approfondir ou à corriger.

Best for

  • Équipes de sécurité qui évaluent un ensemble de services à des commits précis.
  • Équipes d’ingénierie qui ont besoin d’un inventaire reproductible des dépôts et de résultats d’analyse distincts pour chaque dépôt.
  • Personnes chargées de déterminer, pour l’ensemble des dépôts, quels problèmes détectés et quelles lacunes de couverture traiter en priorité.

Contents

    ← All use cases

    Analyse de plusieurs dépôts

    Lancez des analyses de sécurité sur plusieurs dépôts, puis examinez les problèmes détectés et la couverture des analyses.

    Utilisez la CLI de Codex Security pour analyser chaque dépôt d’une liste à un commit précis. Examinez chaque résultat pour déterminer les points à approfondir ou à corriger.

    Intermediate
    Long-running

    Utilisez la CLI de Codex Security pour analyser chaque dépôt d’une liste à un commit précis. Examinez chaque résultat pour déterminer les points à approfondir ou à corriger.

    Intermediate
    Long-running

    Best for

    • Équipes de sécurité qui évaluent un ensemble de services à des commits précis.
    • Équipes d’ingénierie qui ont besoin d’un inventaire reproductible des dépôts et de résultats d’analyse distincts pour chaque dépôt.
    • Personnes chargées de déterminer, pour l’ensemble des dépôts, quels problèmes détectés et quelles lacunes de couverture traiter en priorité.

    Avant de commencer

    Suivez le guide de démarrage rapide de la CLI pour installer Codex Security et vous authentifier. Vérifiez que vous pouvez lancer des analyses de sécurité et que vous disposez d’un accès Git aux dépôts qui vous appartiennent ou que vous avez l’autorisation d’évaluer. Les analyses utilisent vos permissions locales et s’exécutent sans attendre d’approbation. Consultez le guide des permissions d’analyse.

    Préparez l’inventaire des dépôts

    Commencez par quelques dépôts. Enregistrez le contenu suivant dans repositories.csv, puis remplacez les URL d’exemple et les valeurs provisoires des commits :

    id,repository,revision
    payments,https://github.com/YOUR-ORG/payments.git,REPLACE_WITH_FULL_COMMIT_SHA
    identity,https://github.com/YOUR-ORG/identity.git,REPLACE_WITH_FULL_COMMIT_SHA

    Attribuez à chaque dépôt un id unique et indiquez le SHA complet du commit à analyser. Pour obtenir ce SHA à partir d’une copie locale du dépôt, exécutez :

    git -C /path/to/repository rev-parse HEAD

    Chaque analyse porte sur l’intégralité du dépôt tel qu’il se présente au commit indiqué. Ce workflow n’accepte ni les noms de branches ni les SHA abrégés et ne prend pas en compte les modifications non commitées. Pour limiter l’analyse à certains dossiers ou définir des instructions propres à un dépôt, consultez les options du fichier CSV.

    Avec GitHub : Vous pouvez sélectionner les dépôts de façon interactive dans votre compte ou votre organisation GitHub au lieu de préparer un fichier CSV.

    Lancez les analyses

    Placez-vous dans le répertoire contenant repositories.csv. Dans la commande ci-dessous, remplacez le chemin de sortie par celui d’un répertoire privé situé en dehors des dépôts à analyser, puis exécutez la commande :

    npx @openai/codex-security bulk-scan repositories.csv \
      --output-dir /path/outside/repositories/security-scans \
      --workers 2 \
      --mode standard \
      --max-attempts 1 \
      --max-cost 5

    Cette commande exécute deux analyses en parallèle en mode standard, avec une seule tentative par dépôt. L’option --max-cost 5 arrête chaque tentative lorsque son coût estimé dépasse 5 $. Les opérations déjà en cours peuvent entraîner un coût supérieur à l’estimation. Ce seuil ne constitue donc ni un plafond strict ni un budget partagé pour l’ensemble des analyses. Choisissez ces valeurs avant de lancer la commande.

    La CLI enregistre les résultats de chaque dépôt dans un dossier distinct sous security-scans/artifacts/. Gardez ces résultats confidentiels, car ils peuvent contenir des extraits de code source et des détails sur les vulnérabilités.

    Examinez les résultats

    Ouvrez le répertoire des résultats et vérifiez les éléments suivants :

    1. Inventaire : Vérifiez les dépôts et les commits indiqués dans manifest.json.
    2. État : Consultez results.jsonl pour connaître l’état de chaque tentative et l’emplacement de ses artefacts.
    3. Couverture et problèmes détectés : Dans le dossier de chaque tentative, consultez coverage.json pour repérer les lacunes de couverture et les exclusions, puis report.md et findings.json pour examiner les problèmes détectés et les éléments de preuve associés.

    Le code de sortie 0 indique que l’analyse de chaque dépôt s’est terminée avec succès. Il ne garantit pas l’absence de vulnérabilités. Le code de sortie 2 signale une couverture incomplète, une analyse de dépôt qui n’a pas pu aboutir, une erreur dans les données d’entrée ou une erreur d’exécution. Si la couverture est incomplète, une liste vide de problèmes détectés ne suffit pas à établir que le code est sûr.

    Pour chaque dépôt, consignez la prochaine action à mener : examiner un problème détecté, corriger un problème accepté ou donner suite aux lacunes de couverture. Lorsque vous passez le relais à l’équipe responsable, indiquez le commit analysé et fournissez les éléments de preuve associés.

    Pour reprendre une exécution interrompue, relancez la même commande avec le même fichier CSV, les mêmes instructions et le même répertoire de sortie. La CLI ignore les analyses terminées et ne relance pas automatiquement celles dont la couverture est incomplète. Utilisez un nouveau répertoire de sortie si vous modifiez l’inventaire, les révisions, les périmètres d’analyse, les modes ou les instructions. Consultez le guide de reprise et de relance des analyses pour plus de détails.

    Related use cases