Informationen zum Standardsetup
Das Standardsetup für das code scanning ist die schnellste und einfachste Möglichkeit mit dem geringsten Wartungsaufwand, um das code scanning für dein Repository zu aktivieren. Das Standardsetup erstellt auf Basis des Codes in deinem Repository automatisch eine benutzerdefinierte code scanning-Konfiguration. Nach dem Aktivieren der Standardkonfiguration wird der Code, der in von CodeQL unterstützten Sprachen in Ihrem Repository geschrieben wurde, mithilfe von CodeQL gescannt.
- Nach jedem Pushen in den Standard-Branch des Repositorys oder einen geschützten Branch. Weitere Informationen zu geschützten Branches finden Sie unter Informationen zu geschützten Branches.
- Beim Erstellen oder Committen eines Pull Requests basierend auf dem Standard-Branch des Repositorys oder einem geschützten Branch (mit Ausnahme von Pull Requests von Forks)
- Bei einem wöchentlichen Plan.
Unterstützte Sprachen
Es wird empfohlen, das Standardsetup für berechtigte Repositorys zu aktivieren, wenn die Repositorys in Zukunft mindestens eine von CodeQL unterstützte Sprache enthalten. Wenn du das Standardsetup für ein Repository aktivierst, das keine von CodeQL unterstützten Sprachen enthält, führt das Standardsetup keine Scans aus und nutzt keine GitHub Actions-Minuten. Wenn die von CodeQL unterstützten Sprachen zum Standardbranch des Repositorys hinzugefügt werden, beginnt das Standardsetup automatisch mit dem Scannen der von CodeQL unterstützten Sprachen und der Nutzung von GitHub Actions-Minuten. Weitere Informationen zu den von CodeQL unterstützten Sprachen findest du unter Informationen zu Codescans mit CodeQL.
Wenn sich der Code in einem Repository ändert, um Sprachen aufzunehmen, die von CodeQL unterstützt werden, aktualisiert GitHub automatisch die code scanning-Konfiguration, um die neue Sprache einzuschließen. Wenn beim code scanning mit der neuen Konfiguration ein Fehler auftritt, setzt GitHub automatisch die vorherige Konfiguration fort, damit das code scanning für das Repository weiterhin funktioniert.
Anpassung des Standardsetups
Nachdem Sie eine anfängliche Analyse des Codes mit Standardsetup ausgeführt haben, können Sie Änderungen an Ihrer Konfiguration vornehmen, um Ihre Anforderungen besser zu erfüllen.
Mit dem erweiterten Setup für das code scanning erhältst du präzisere Kontrolle über deine code scanning-Konfiguration.
Konfigurationsoptionen
Für vorhandene Konfigurationen des Standardsetups können Sie Folgendes bearbeiten:
- Folgende Sprachen werden vom Standardsetup analysiert.
- Die Abfragesuite, die während der Analyse ausgeführt wird. Weitere Informationen zu den verfügbaren Abfragesammlungen findest du unter CodeQL-Abfragesammlungen.
- Die Gefahrenmodelle (öffentliche Vorschau), die für die Analyse zu verwenden sind. Ihre Wahl des Gefahrenmodells bestimmt, welche Quellen von enthaltenen Daten als Risiko für Ihre Anwendung angesehen werden. Während der Laufzeit der öffentliche Vorschau werden Bedrohungsmodelle nur für die Analyse von Java/Kotlin und C# unterstützt. Weitere Informationen zu Bedrohungsmodellen findest du unter Einschließen lokaler Quellen verfälschter Daten im Standardsetup.
Wenn Ihre Codebasis von einer Bibliothek oder einem Framework abhängt, die von den Standardbibliotheken, die mit CodeQL enthalten sind, nicht erkannt wird, können Sie auch dieCodeQL-Abdeckung im Standardsetup mithilfe von CodeQL-Modellpaketen erweitern. Weitere Informationen finden Sie unter Erweitern der CodeQL-Abdeckung mit CodeQL-Modellpaketen in der Standardeinrichtung.
Verfügbare Runner
Sie können das Standardsetup für alle CodeQL-unterstützten Sprachen auf selbstgehosteten Runnern oder GitHub-gehosteten Runnern verwenden.
Sie können selbst gehostete Runner für die Standardeinrichtung zuweisen, indem Sie den Runnern
die code-scanning-Standardbezeichnung geben, oder Sie können ihnen optional benutzerdefinierte Bezeichnungen zuweisen, so dass einzelne Repositorys unterschiedliche Runner verwenden können.
Es wird empfohlen, dass Sie nur Runner mit der Standardbezeichnung code-scanning zuweisen, es sei denn, Sie haben einen bestimmten Anwendungsfall. Sie können jedoch benutzerdefinierte Bezeichnungen verwenden, um Folgendes zu erreichen:
- Weisen Sie kritischen Repositorys leistungsstärkere selbst-gehostete Runner für schnellere Analysen der code scanning zu.
- Führen Sie Ihre Analysen der code scanning auf einer bestimmten Plattform aus (z. B. macOS).
- Verfügen Sie über eine detaillierte Steuerung der Workload für Ihre GitHub gehosteten Runnern und selbst-gehosteten Runnern.
Informationen zur erweiterten Einrichtung
Das erweiterte Setup für das code scanning ist hilfreich, wenn du das code scanning anpassen musst. Sie können code scanning mit GitHub Actions oder einem externen System für die kontinuierliche Integration oder Bereitstellung (CI/CD) einrichten.
Wenn du die Codeüberprüfung mit mehreren Konfigurationen ausführst, kann es passieren, dass eine Warnung mehrere Analyseursprünge aufweist. Wenn eine Warnung mehrere Analyseursprünge hat, kannst du den Status der Warnung für jeden Analyseursprung auf der Warnungsseite einsehen. Weitere Informationen finden Sie unter Informationen zu Codeüberprüfungswarnungen.
Mit GitHub Actions
Durch Erstellen und Bearbeiten einer GitHub Actions Workflowdatei können Sie definieren, wie kompilierte Sprachen erstellt werden, welche Abfragen ausgeführt werden sollen, die zu scannenden Sprachen auswählen, einen Matrixbuild verwenden und vieles mehr. Sie haben auch Zugriff auf alle Optionen für die Steuerung von Workflows, z. B. das Ändern des Scanzeitplans, das Definieren von Workflow-Triggern und die Angabe von fachspezifischen Runnern.
Ihr Siteadmin kann benutzenden Personen auch Drittanbieteraktionen für code scanning bereitstellen, indem GitHub Connect eingerichtet wird. Weitere Informationen finden Sie unter Konfigurieren der Codeüberprüfung für Ihre Anwendung.
Mit einem CI/CD-System eines Drittanbieters
Alternativ zum Ausführen von code scanning innerhalb von GitHub mithilfe von GitHub Actions können Sie Code in einem externen CI/CD-System analysieren und anschließend die Ergebnisse in GitHub hochladen.
Die CodeQL CLI ist ein eigenständiges Befehlszeilentool, mit dem du Code analysieren kannst. Du kannst CodeQL CLI zum System eines Drittanbieters hinzufügen oder ein anderes statisches Analysetool eines Drittanbieters verwenden, das Ergebnisse als Static Analysis Results Interchange Format (SARIF) 2.1.0-Daten erzeugen kann. Weitere Informationen findest du unter Informationen zur CodeQL-CLI und SARIF-Unterstützung für die Codeüberprüfung.
Warnhinweise für code scanning, die du extern generierst, werden auf dieselbe Weise angezeigt wie die für code scanning, die du innerhalb von GitHub generierst.
Nächste Schritte
Sie können das Standardsetup für ein einzelnes Repository, mehrere Repositorys oder alle Repositorys in einer Organisation gleichzeitig aktivieren.
- Ein einzelnes Repository finden Sie unter Konfigurieren des Standardsetups für das Code-Scanning.
- Informationen zur Massenaktivierung finden Sie unter Konfigurieren des Standardsetups für das Codescanning im großen Stil.
Um das erweiterte Setup zu konfigurieren, siehe Konfigurieren des erweiterten Setups für das Code-Scanning.