Kodescanning og CodeQL

Fuldført

Afhængigt af hvilket værktøj du vil bruge til analyse, og hvordan du vil generere beskeder, er der et par forskellige muligheder for at konfigurere kodescanning i dit lager. De tre primære måder er:

  • Brug standardkonfigurationen til hurtigt at konfigurere CodeQL-analyse til kodescanning på dit lager. Standardkonfigurationen vælger automatisk de sprog, der skal analyseres, forespørgselspakken, der skal køres, og hændelser, der udløser scanninger. Hvis du foretrækker det, kan du manuelt vælge den forespørgselspakke, der skal køres, og sprog, der skal analyseres. Når du har aktiveret CodeQL, udfører GitHub-handlinger arbejdsproceskørsler for at scanne din kode. Du kan finde flere oplysninger under "Konfiguration af standardopsætning til kodescanning".
  • Brug avanceret konfiguration til at føje CodeQL-arbejdsprocessen til dit lager. Dette genererer en brugerdefineret arbejdsprocesfil, der bruger github/codeql-action til at køre CodeQL-kommandolinjegrænsefladen. Du kan finde flere oplysninger under "Konfiguration af avanceret konfiguration til kodescanning".
  • Kør CodeQL-kommandolinjegrænsefladen direkte i et eksternt CI-system, og upload resultaterne til GitHub. Du kan finde flere oplysninger under "Brug af kodescanning sammen med dit eksisterende CI-system"[2]

Tidligere har vi lært, hvordan du kommer i gang med standardkonfigurationen og -konfigurationerne. Nu får du mere at vide om, hvordan du konfigurerer kodescanning med den avancerede konfiguration, samt hvordan du udfører massekonfiguration af en arbejdsproces til kodescanning for flere lagre.

Kodescanning med GitHub-handlinger og CodeQL

Benyt følgende fremgangsmåde for at konfigurere kodescanning med den avancerede konfiguration:

  1. Gå til fanen indstillinger for i dit lager.
  2. I panelet til venstre skal du gå til Kodesikkerhed og -analyse, klikke på rullelisten konfiguration og vælge Avanceret. Du skal muligvis aktivere GitHub Advanced Security, før du aktiverer kodescanning.
  3. Du føres til en ny side med en genereret arbejdsprocesfil. Denne fil kaldes som standard codeql.yml og er en konfigurerbar arbejdsprocesfil, der skal sendes til dit lager for at begynde at køre kodescanning.
  4. Hvis du vil tilpasse, hvordan kodescanning scanner din kode, skal du redigere arbejdsprocessen. Generelt kan du bekræfte CodeQL-analysearbejdsprocessen uden at foretage ændringer af den.
  5. Brug knappen Bekræft ændringer... i øverste højre hjørne, og skriv en bekræftelsesmeddelelse i pop op-vinduet.
  6. Vælg, om du vil bekræfte standardgrenen direkte, eller om du vil oprette en ny forgrening og starte en pullanmodning.
  7. Klik på Udfør ændringer.

I standardarbejdsprocessen for CodeQL-analyse er kodescanning konfigureret til at analysere din kode, hver gang du enten overfører en ændring til standardforgreningen eller beskyttede forgreninger eller udløser en pullanmodning i forhold til standardforgreningen. Derfor begynder kodescanning nu.

Udløserne on:pull_request og on:push til kodescanning er hver især nyttige til forskellige formål.

Massekonfiguration af kodescanning

Du kan konfigurere kodescanning i mange lagre på én gang ved hjælp af et script. Hvis du vil bruge et script til at udløse pullanmodninger, der føjer en GitHub-handlingsarbejdsproces til flere lagre, skal du referere til jhutchings1/Create-ActionsPRs[3] lager, f.eks. ved hjælp af PowerShell, eller nickliffen/ghas-enablement[4] for eksempel ved hjælp af NodeJS.