Skip to main content
Wir veröffentlichen regelmäßig Aktualisierungen unserer Dokumentation, und die Übersetzung dieser Seite ist möglicherweise noch nicht abgeschlossen. Aktuelle Informationen findest du in der englischsprachigen Dokumentation.

Konfigurieren der Codeüberprüfung für ein Repository

Du kannst die code scanning für ein Repository konfigurieren, um Sicherheitsrisiken in deinem Code zu ermitteln.

Wer kann dieses Feature verwenden?

People with admin permissions to a repository, or the security manager role for the repository, can configure code scanning for that repository. People with write permissions to a repository can also configure code scanning, but only by creating a workflow file or manually uploading a SARIF file.

Code scanning ist für organisationseigene Repositorys in GitHub Enterprise Server verfügbar. Dieses Feature erfordert eine Lizenz für GitHub Advanced Security. Weitere Informationen findest du unter Informationen zu GitHub Advanced Security.

Hinweis: Dein Websiteadministrator muss code scanning für deine GitHub Enterprise Server-Instanz aktivieren, damit du dieses Feature verwenden kannst. Wenn du GitHub Actions zum Überprüfen deines Codes verwenden möchtest, muss der Websiteadministrator auch GitHub Actions aktivieren und die erforderliche Infrastruktur einrichten. Weitere Informationen findest du unter Konfigurieren des Codescannings für deine Appliance.

Optionen zum Konfigurieren der code scanning

Du entscheidest, wie du code scanning-Warnungen generieren möchtest und welche Tools auf Repositoryebene verwendet werden sollen. GitHub Enterprise Server bietet eine vollständig integrierte Unterstützung für CodeQL-Analysen sowie für Analysen mit Drittanbietertools. Weitere Informationen findest du unter den folgenden Aufzählungspunkten und Informationen zu Codescans.

  • CodeQL : Verwendet GitHub Actions (siehe unten) oder führt die CodeQL-Analyse im CI-System (Continuous Integration) eines Drittanbieters aus (siehe Informationen zur CodeQL-Codeüberprüfung in deinem CI-System).

  • Drittanbieter: Verwendet GitHub Actions oder Drittanbietertools und lädt die Ergebnisse in GitHub Enterprise Server hoch (siehe Hochladen einer SARIF-Datei in GitHub).

    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 findest du unter Informationen zu Codeüberprüfungswarnungen.

Hinweis: In diesem Artikel werden die Features beschrieben, die in der Version der CodeQL-Aktion und dem zugehörigen CodeQL CLI-Bundle im ursprünglichen Release dieser Version von GitHub Enterprise Server enthalten sind. Wenn dein Unternehmen eine neuere Version der CodeQL-Aktion verwendet, findest du Informationen zu den neuesten Features in der GitHub Enterprise Cloud-Version dieses Artikels. Informationen zur Verwendung der aktuellen Version findest du unter Konfigurieren des Codescannings für deine Appliance.

Manuelles Konfigurieren der code scanning

  1. Navigiere auf deine GitHub Enterprise Server-Instanz zur Hauptseite des Repositorys.

  2. Wähle unter dem Repositorynamen die Option Sicherheit aus. Wenn die Registerkarte „Sicherheit“ nicht angezeigt wird, wähle im Dropdownmenü die Option Sicherheit aus. Screenshot eines Repositoryheaders mit den Registerkarten. Die Registerkarte „Sicherheit“ ist dunkelorange umrandet.

  3. Wähle rechts neben „Code scanning-Warnungen“ die Option code scanning einrichten aus. Wenn „code scanning-Warnungen“ fehlt, bitte einen Organisationsbesitzerin oder Repositoryadministrator*in, GitHub Advanced Security zu aktivieren. Weitere Informationen findest du unter Verwalten von Sicherheits- und Analyseeinstellungen für deine Organisation oder Verwalten von Sicherheits- und Analyseeinstellungen für dein Repository.

  4. Klicke unter „Erste Schritte mit code scanning“ für CodeQL-Analyseworkflow oder einen Drittanbieterworkflow auf Diesen Workflow einrichten.

    Workflows werden nur angezeigt, wenn sie für die im Repository erkannten Programmiersprachen relevant sind. CodeQL-Analyseworkflow wird immer angezeigt. Die Schaltfläche „Diesen Workflow einrichten“ ist jedoch nur aktiviert, wenn die CodeQL-Analyse die im Repository vorhandenen Sprachen unterstützt.

  5. Bearbeite den Workflow, wenn du die Codeüberprüfung durch code scanning anpassen möchtest.

    In der Regel kannst du CodeQL-Analyseworkflow ohne Änderungen committen. Viele der Drittanbieterworkflows erfordern jedoch eine zusätzliche Konfiguration. Lies daher vor dem Committen die Kommentare im Workflow.

    Weitere Informationen findest du unter Anpassen der Codeüberprüfung.

  6. Klicke auf Änderungen committen... , um das Formular für Commitänderungen anzuzeigen.

    Screenshot des Formulars zum Erstellen einer neuen Datei. Rechts neben dem Dateinamen befindet sich eine grüne Schaltfläche mit der Bezeichnung „Änderungen committen...“, die dunkelorange umrandet ist.

  7. Gib im Feld „Commitnachricht“ eine Commitnachricht ein.

  8. Wähle aus, ob du direkt in den Standardbranch committen möchtest, oder erstelle einen neuen Branch, und starte einen Pull Request.

  9. Klicke auf Commit new file (Neue Datei committen) oder Propose new file (Neue Datei vorschlagen).

Im empfohlenen CodeQL-Analyseworkflow wird code scanning so konfiguriert, dass dein Code jedes Mal analysiert wird, wenn du entweder eine Änderung an den Standardbranch oder an geschützte Branches pushst oder einen Pull Request für den Standardbranch auslöst. Daraufhin wird code scanning gestartet.

Die on:pull_request- und on:push-Trigger für Codescans sind jeweils für unterschiedliche Zwecke nützlich. Weitere Informationen findest du unter Anpassen der Codeüberprüfung.

Massenkonfiguration der code scanning

Mithilfe eines Skripts kannst du die code scanning für viele Repositorys gleichzeitig konfigurieren. Wenn du mit einem Skript Pull Requests auslösen möchtest, die mehreren Repositorys einen GitHub Actions-Workflow hinzufügen, findest du im Repository jhutchings1/Create-ActionsPRs ein Beispiel mit PowerShell bzw. im Repository nickliffen/ghas-enablement ein Beispiel für NodeJS (anstelle von PowerShell).

Anzeigen der Protokollausgabe von code scanning

Nach dem Konfigurieren der code scanning für dein Repository kannst du die Ausgabe der Aktionen während der Ausführung überwachen.

  1. Klicke unter dem Namen deines Repositorys auf Aktionen. Registerkarte „Aktionen“ auf der Navigationsleiste des Hauptrepositorys

    Es wird eine Liste angezeigt, die einen Eintrag für die Ausführung des code scanning-Workflows enthält. Der Text des Eintrags entspricht dem Titel deiner Commitnachricht.

    Screenshot: Seite „Alle Workflows“ In der Liste der Workflowausführungen befindet sich eine Ausführung mit der Bezeichnung „Create .github/workflows/codeql.yml.“.

  2. Klicke auf den Eintrag für die Ausführung des code scanning-Workflows.

  3. Klicke auf den Namen des Auftrags auf der linken Seite. Beispiel: Analyse (SPRACHE) .

    Screenshot: Protokollausgabe für den Auftrag „Analyze (go)“. In der linken Seitenleiste wird „Analyze (go)“ unter der Überschrift „Aufträge“ aufgeführt.

  4. Überprüfe die Protokollausgabe der Aktionen in diesem Workflow während der Ausführung.

  5. Sobald alle Aufträge abgeschlossen sind, kannst du die Details aller identifizierten code scanning-Warnungen anzeigen. Weitere Informationen findest du unter Verwalten von Codescanwarnungen für dein Repository.

Grundlegendes zu den Überprüfungen von Pull Requests

Jeder code scanning-Workflow, den du für Pull Requests festgelegt hast, weist immer mindestens zwei Einträge im Abschnitt „Überprüfungen“ eines Pull Requests auf. Ein Eintrag bezieht sich auf die einzelnen Analyseaufträge im Workflow und der letzte Eintrag auf die Ergebnisse der Analyse.

Der Name der code scanning-Analyseüberprüfungen wird im Format „TOOLNAME / AUFTRAGSNAME (TRIGGER)“ angegeben. So erhält beispielsweise die CodeQL-Analyse von C++-Code den Eintrag „CodeQL / Analyse (cpp) (pull_request)“. Klicke für einen code scanning -Analyseeintrag auf Details, um die Protokolldaten anzuzeigen. Auf diese Weise kannst du bei einem Fehler im Analyseauftrag das Problem debuggen. Dies kann etwa bei der code scanning-Analyse kompilierter Sprachen der Fall sein, wenn der Code mit der Aktion nicht erstellt werden kann.

Screenshot: Beispiel für Pull-Request-Überprüfungen durch code scanning, ein Fehler bei der CodeQL-Analyse für C++ werden mit einem roten Kreuz dargestellt.

Nach Abschluss der code scanning-Aufträge überprüft GitHub, ob durch den Pull Request Warnungen hinzugekommen sind, und fügt der Liste mit den Überprüfungen den Eintrag „Code scanning-Ergebnisse/“ hinzu. Nach mindestens einer Ausführung von code scanning kannst du auf Details klicken, um die Ergebnisse der Analyse anzuzeigen.

Nächste Schritte

Nach dem Konfigurieren der code scanning und dem Abschluss der Aktionen kannst du Folgendes tun: