Skip to main content

Konfigurieren der Codeüberprüfung für Ihre Anwendung

Sie können code scanning für GitHub Enterprise Server aktivieren, konfigurieren und deaktivieren, sofern es sich um einen . Code scanning ermöglicht Benutzer*innen das Überprüfen von Code auf Sicherheitsrisiken und Fehler.

Wer kann dieses Feature verwenden?

Organisationseigene Repositorys mit aktivierter GitHub Advanced Security

Informationen zu code scanning

Code scanning ist ein Feature, das du zum Analysieren des Codes in einem GitHub-Repository verwendest, um Sicherheitsrisiken und Codefehler zu finden. Alle von der Analyse ermittelten Probleme werden im Repository angezeigt.

Du kannst das code scanning so konfigurieren, dass die CodeQL-Analyse und Drittanbieteranalysen ausgeführt werden. Das Code scanning unterstützt auch das native Ausführen von Analysen mithilfe von GitHub Actions oder das externe Ausführen von Analysen mithilfe vorhandener CI/CD-Infrastrukturen. In den folgenden Aufzählungspunkten werden die Optionen zusammengefasst, die Benutzer*innen zur Verfügung stehen, wenn du deine deine GitHub Enterprise Server-Instanz so konfigurierst, dass das code scanning mithilfe von Aktionen zulässig ist.

Überprüfen, ob deine Lizenz GitHub Advanced Security

umfasst

Du kannst ermitteln, ob dein Unternehmen über eine GitHub Advanced Security-Lizenz verfügt, indem du deine Unternehmenseinstellungen überprüfst. Weitere Informationen findest du unter Aktivieren von GitHub Advanced Security für dein Unternehmen.

Voraussetzungen für das code scanning

Ausführen des code scanning mithilfe von GitHub Actions

Bereitstellen eines selbst gehosteten Runners

GitHub Enterprise Server kann das code scanning mithilfe eines GitHub Actions-Workflows ausführen. Zunächst musst du einen oder mehrere selbstgehostete GitHub Actions-Runner in deiner Umgebung bereitstellen. Du kannst selbstgehostete Runner auf Repository-, Organisations- oder Unternehmenskontoebene bereitstellen. Siehe „Informationen zu selbstgehosteten Runnern“ und „Selbst-gehostete Runner hinzufügen“.

Wenn Sie einen selbstgehosteten Runner für die CodeQL-Analyse bereitstellen, muss der Runner eine von CodeQL unterstützte Betriebssystemversion und CPU-Architektur verwenden. Weitere Informationen finden Sie unter CodeQL: Systemanforderungen.

Wenn du das Standardsetup für das code scanning verwendest, weise deinem selbstgehosteten Runner die Bezeichnung code-scanning zu. Weitere Informationen zur Verwendung von Bezeichnungen mit selbst gehosteten Runnern finden Sie unter „AUTOTITEL“. Weitere Informationen zur Verwendung des Standard-Setups für die Codeüberprüfungsanalyse von kompilierten Sprachen finden Sie unter „AUTOTITEL“.

Du musst sicherstellen, dass sich Git in der PATH-Variablen für alle selbstgehosteten Runner befindet, die du für die Ausführung von CodeQL-Aktionen verwendest.

Hinweis: Wenn Sie CodeQL code scanning verwenden, um in Python geschriebenen Code in Ihrem Unternehmen zu analysieren, müssen Sie sicherstellen, dass für Ihren selbstgehosteten Runner Python 3 installiert ist.

Bereitstellen einer Runner-Skalierungsgruppe

Sie können Actions Runner Controller verwenden, um eine dedizierte Runner-Skalierungsgruppe für Ihre GitHub Enterprise Server-Instanz zu erstellen. Weitere Informationen finden Sie unter Bereitstellen von Runner-Skalierungsgruppen mit Actions Runner Controller.

Bereitstellen der Aktionen für das code scanning

Wenn du Aktionen für die Ausführung des code scanning in GitHub Enterprise Server verwenden möchtest, müssen die Aktionen auf deiner Appliance verfügbar sein.

Die CodeQL-Aktion ist in deiner GitHub Enterprise Server-Installation enthalten. Wenn GitHub Enterprise Server 3.11 und dein Runner GitHub Actions Zugriff auf das Internet besitzen, lädt die Aktion automatisch das CodeQL 2.14.6-Bundle herunter, das zum Durchführen der Analyse erforderlich ist. Alternativ kannst du ein Synchronisierungstool verwenden, um die neueste veröffentlichte Version des CodeQL-Analysebundles lokal verfügbar zu machen. Siehe unten "Konfigurieren der CodeQL-Analyse auf einem Server ohne Internetzugriff".

Du kannst für das code scanning auch Aktionen von Drittanbietern für Benutzer*innen zur Verfügung stellen, indem du GitHub Connect einrichtest. Siehe "Konfigurieren der Codeüberprüfung für Ihre Anwendung" weiter unten.

Konfigurieren der CodeQL-Analyse auf einem Server ohne Internetzugriff

Wenn der Server, auf dem du GitHub Enterprise Server ausführst, nicht mit dem Internet verbunden ist und du Benutzer*innen das Aktivieren des CodeQL-code scanning für ihre Repositorys ermöglichen möchtest, musst du mit dem CodeQL-Aktionssynchronisierungstool das CodeQL-Analysebundle von GitHub.com auf deinen Server kopieren. Das Tool und Informationen zur Verwendung findest du unter https://github.com/github/codeql-action-sync-tool.

Wenn du das CodeQL-Aktionssynchronisierungstool konfigurierst, kannst du damit die neuesten Releases der CodeQL-Aktion und das zugehörige CodeQL-Analysebundle synchronisieren. Diese sind mit GitHub Enterprise Server kompatibel.

Konfigurieren von GitHub Connect zum Synchronisieren von GitHub Actions

  1. Wenn du bei Bedarf Aktionsworkflows von GitHub.com herunterladen möchtest, musst du GitHub Connect aktivieren. Weitere Informationen finden Sie unter Enabling GitHub Connect for GitHub.com.
  2. Außerdem müssen Sie GitHub Actions aktivieren. Weitere Informationen finden Sie unter Erste Schritte mit GitHub Actions für GitHub Enterprise Server.
  3. Der nächste Schritt besteht darin, den Zugriff auf Aktionen auf GitHub.com mithilfe von GitHub Connect zu konfigurieren. Weitere Informationen finden Sie unter Aktivieren des automatischen Zugriffs auf GitHub.com-Aktionen mit GitHub Connect.
  4. Füge deinem Repository-, Organisations- oder Unternehmenskonto einen selbstgehosteten Runner hinzu. Weitere Informationen finden Sie unter Selbst-gehostete Runner hinzufügen.

Ausführen des Codescannings mithilfe der CodeQL CLI

Wenn du GitHub Actions nicht verwenden möchtest, solltest du das code scanning mithilfe der CodeQL CLI ausführen.

Die CodeQL CLI ist ein Befehlszeilentool, das du zum Analysieren von Codebasen auf jedem beliebigen Computer (einschließlich eines CI/CD-Drittanbietersystems) verwenden kannst. Weitere Informationen finden Sie unter Verwenden der Codeüberprüfung mit deinem vorhandenen CI-System.