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 des Standardsetups wird der Code in CodeQL-unterstützten Sprachen in deinem Repository überprüft:
- Nach jedem Pushen in den Standard-Branch des Repositorys oder einen geschützten Branch. Weitere Informationen zu geschützten Branches findest du unter Informationen zu geschützten Branches.
- Beim Erstellen oder Festschreiben einer Pull-Anfrage basierend auf dem Standardzweig des Repositorys oder einem beliebigen geschützten Zweig, ausgenommen Pull-Anfragen von Forks.
- Bei einem wöchentlichen Plan.
Note
Wenn in einem Repository mit aktiviertem Standardsetup seit 6 Monaten keine Pushes und Pull Requests ausgeführt wurden, wird der wöchentliche Zeitplan deaktiviert, um GitHub Actions-Minuten zu sparen.
Du kannst das Standard-Setup auch für mehrere oder alle Repositorys in einer Organisation gleichzeitig aktivieren. Informationen zur Massenaktivierung findest du unter Konfigurieren des Standardsetups für das Codescanning im großen Stil.
Mit dem erweiterten Setup für das code scanning erhältst du präzisere Kontrolle über deine code scanning-Konfiguration. Weitere Informationen finden Sie unter Konfigurieren des erweiterten Setups für das Codescanning.
Anforderungen für die Verwendung des Standardsetups
Dein Repository ist für das Standardsetup des code scanning geeignet, wenn:
- GitHub Actions aktiviert ist.
- Es ist öffentlich sichtbar.
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 von CodeQL unterstützte Sprachen zum Repository 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 finden Sie unter Informationen zu Codescans mit CodeQL.
Du kannst das Standardsetup für alle von CodeQL unterstützten Sprachen für selbstgehostete Runner oder von GitHub gehostete Runner verwenden. Details findest du unter Zuweisen von Bezeichnungen zu Runnern weiter unten in diesem Artikel.
Das Standard-Setup verwendet den none
Build-Modus für C# und Java und den autobuild
Build-Modus für andere kompilierte Sprachen. Sie sollten Ihre selbst gehosteten Runner so konfigurieren, dass sie alle notwendigen Befehle für die C/C++-, C#- und Swift-Analyse ausführen können. Für die Analyse von JavaScript/TypeScript-, Go-, Ruby-, Python- und Kotlin-Code ist derzeit keine spezielle Konfiguration erforderlich.
Anpassen des Standardsetups
Es wird empfohlen, code scanning mit der Standardeinrichtung zu verwenden. Nachdem du das Standardsetup konfiguriert haben, kannst du code scanning auswerten, um zu sehen, wie es für dich funktioniert. Wenn du feststellst, dass etwas nicht wie erwartet funktioniert, kannst du das Standardsetup anpassen, um deine Codesicherheitsanforderungen besser zu erfüllen. Weitere Informationen finden Sie unter Auswerten des Standardsetups für die Codeüberprüfung.
Konfigurieren des Standardsetups für ein Repository
Wenn Sie das Standardsetup für code scanning für ein Repository erstmals konfigurieren, werden alle von CodeQL unterstützten Sprachen im Repository automatisch analysiert. Die erfolgreich analysierten Sprachen werden in der neuen Standardsetup-Konfiguration beibehalten. Die nicht erfolgreich analysierten Sprachen werden in der Standardsetup-Konfiguration automatisch abgewählt.
Note
Wenn die Analysen für alle von CodeQL unterstützten Sprachen in einem Repository fehlschlagen, wird das Standardsetup zwar aktiviert, führt aber keine Überprüfungen durch und nutzt keine GitHub Actions-Minuten, bis eine andere von CodeQL unterstützte Sprache zum Repository hinzugefügt oder das Standardsetup manuell neu konfiguriert wird und die Analyse einer von CodeQL unterstützten Sprache erfolgreich ist.
-
Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
Note
Wenn du das Standardsetup für einen Fork konfigurierst, musst du zuerst GitHub Actions aktivieren. Um GitHub Actions zu aktivieren, klicken Sie unter Ihrem Repositorynamen auf Actions (Aktionen), und klicken Sie dann auf I understand my workflows, go ahead and enable them (Ich verstehe meine Workflows, und sie sollen aktiviert werden). Beachten Sie, dass dadurch alle vorhandenen Workflows in Ihrer Verzweigung aktiviert werden.
-
Wähle unter dem Namen deines Repositorys die Option Einstellungen aus. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü die Option Einstellungen aus.
-
Klicke im Abschnitt „Security“ der Seitenleiste auf Code security.
-
Wählen Sie im Abschnitt „Code scanning“ die Option Setup aus, und klicken Sie dann auf Standard.
Daraufhin wird das Dialogfeld „CodeQL-Standardkonfiguration“ angezeigt, in dem die code scanning-Konfiguration zusammengefasst wird, die automatisch vom Standardsetup erstellt wurde.
- Wähle optional im Abschnitt „Abfragesammlungen“ des modalen Dialogfelds „CodeQL-Standardkonfiguration“ das Dropdownmenü Standard aus, und klicke dann auf die CodeQL-Abfragesammlung, die du verwenden möchtest.
Wenn du dich für die Abfragesammlung Erweitert entscheidest, führt deine Konfiguration der code scanning zusätzlich zu den Abfragen der Abfragesammlung Standard Abfragen mit niedrigerem Schweregrad und geringerer Genauigkeit aus. Weitere Informationen zu den verfügbaren Abfragesammlungen findest du unter CodeQL-Abfragesammlungen.
Note
Wenn du die code scanning für die Verwendung der erweiterten Abfragesammlung konfigurierst, wird möglicherweise eine höhere Anzahl falsch positiver Warnungen angezeigt.
-
Wenn du Runner mit Bezeichnungen verwenden möchtest, wähle im Abschnitt „Runner type“ die Option Standard GitHub runner aus, und wähle anschließend Labeled runner aus. Gib dann neben „Runner label“ die Bezeichnung eines vorhandenen selbstgehosteten Runners oder eines von GitHub gehosteten Runners ein. Details findest du unter Zuweisen von Bezeichnungen zu Runnern weiter unten in diesem Artikel.
-
Überprüfe die Einstellungen für das Standardsetup in deinem Repository, und klicke dann auf CodeQL aktivieren. Dadurch wird ein Workflow ausgelöst, der die neue, automatisch generierte Konfiguration testet.
Note
Wenn du vom erweiterten zum Standardsetup wechselst, wird dir eine Warnung angezeigt, dass das Standardsetup deine vorhandenen code scanning-Konfigurationen überschreibt. Diese Warnung bedeutet, dass das Standardsetup die vorhandene Workflowdatei deaktiviert und jegliche Uploads der CodeQL-Analyse-API blockiert.
-
Um nach der Neuaktivierung deine Standardsetupkonfiguration einzusehen, wähle optional aus, und klicke dann auf CodeQL-Konfiguration anzeigen.
Zuweisen von Bezeichnungen zu Runnern
Note
Code scanning sieht zugewiesene Runner, wenn das Standardsetup aktiviert ist. Wenn ein Runner einem Repository zugewiesen ist, das bereits das Standardsetup ausführt, musst du das Standardsetup deaktivieren und erneut aktivieren, um mit der Verwendung des Runners zu beginnen. Wenn du einen Runner hinzufügen und mit der Verwendung beginnen möchtest, kannst du die Konfiguration manuell ändern, ohne das Standardsetup deaktivieren und erneut aktivieren zu müssen.
Du kannst auch selbstgehostete Runner mit der Standardbezeichnung code-scanning
zuweisen oder optional benutzerdefinierte Bezeichnungen zuweisen, sodass einzelne Repositorys unterschiedliche Runner verwenden können. Weitere Informationen zum Zuweisen von Bezeichnungen zu selbstgehosteten Runnern findest du unter Verwenden von Bezeichnungen mit selbstgehosteten Runnern.
Die Angabe benutzerdefinierter Bezeichnungen für selbstgehostete Runner ist optional. Es wird empfohlen, dass du nur Runner mit der Standardbezeichnung code-scanning
zuweist, es sei denn, du hast einen bestimmten Anwendungsfall. Sie möchten beispielsweise Folgendes durchführen:
- Weise kritischen Repositorys leistungsstärkere selbstgehostete Runner für schnellere Analysen der code scanning zu.
- Führe deine Analysen der code scanning auf einer bestimmten Plattform aus (z. B. macOS).
- Du verfügst über die präzise Steuerung für von GitHub gehosteten Runnern und selbstgehosteten Runnern.
Nachdem du selbstgehosteten Runnern benutzerdefinierte Bezeichnungen zugewiesen hast, können deine Repositorys diese Runner für das Standardsetup der code scanning verwenden. Weitere Informationen findest du weiter oben in diesem Artikel unter Konfigurieren des Standardsetups für ein Repository.
Du kannst auch security configurations zum Zuweisen von Bezeichnungen zu selbstgehosteten Runnern für die code scanning verwenden. Weitere Informationen findest du unter Erstellen einer benutzerdefinierten Sicherheitskonfiguration.
Zuweisen von größere Runner
Nenne den Runner code-scanning
, um einen größerer Runner zuzuweisen. Dadurch wird die Bezeichnung code-scanning
automatisch zu den größerer Runner hinzugefügt. Eine Organisation kann nur einen größerer Runner mit der Bezeichnung code-scanning
haben, und dieser Runner verarbeitet alle code scanning-Aufträge aus Repositorys innerhalb Ihrer Organisation mit Zugriff auf die Runnergruppe. Weitere Informationen findest du unter Konfigurieren größerer Runner für die Standardeinrichtung.
Nächste Schritte
Nachdem deine Konfiguration mindestens einmal erfolgreich ausgeführt wurde, kannst du code scanning-Warnungen untersuchen und beheben. Weitere Informationen zu code scanning-Warnungen findest du unter Informationen zu Codeüberprüfungswarnungen und Bewerten von Warnungen der Codeüberprüfung für das Repository.
Nachdem du das Standardsetup fürcode scanning konfiguriert hast, kannst du dich darüber informieren, wie du auswerten kannst, wie gut das Ganze für dich funktioniert, sowie über die nächsten Schritte, die du ausführen kannst, um es anzupassen. Weitere Informationen finden Sie unter Auswerten des Standardsetups für die Codeüberprüfung.
Ausführliche Informationen zu deiner code scanning-Konfiguration, einschließlich Zeitstempeln für jede Überprüfung und dem Prozentsatz der überprüften Dateien, findest du auf der Seite „Toolstatus“. Weitere Informationen finden Sie unter Informationen zur Toolstatusseite für die Codeüberprüfung.
Beim Konfigurieren des Standardsetups tritt möglicherweise ein Fehler auf. Weitere Informationen zum Behandeln bestimmter Fehler findest du unter Problembehandlung bei der Codeüberprüfung.