Skip to main content

Diese Version von GitHub Enterprise Server wurde eingestellt am 2024-03-26. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für bessere Leistung, verbesserte Sicherheit und neue Features aktualisiere auf die neueste Version von GitHub Enterprise Server. Wende dich an den GitHub Enterprise-Support, um Hilfe zum Upgrade zu erhalten.

Konfigurieren der Abhängigkeitsüberprüfung

Du kannst die Abhängigkeitsüberprüfung verwenden, um Sicherheitsrisiken abzufangen, bevor sie deinem Projekt hinzugefügt werden.

Informationen zur Abhängigkeitsüberprüfung

Die Abhängigkeitsüberprüfung hilft Dir, Abhängigkeitsänderungen und die Sicherheitswirkung dieser Änderungen bei jedem Pull Request zu verstehen. Sie bietet eine leicht verständliche Visualisierung von Abhängigkeitsänderungen mit Rich-Diff auf der Registerkarte „Geänderte Dateien“ eines Pull Requests. Die Abhängigkeitsüberprüfung informiert Dich über:

  • Welche Abhängigkeiten hinzugefügt, entfernt oder aktualisiert wurden, sowie die Veröffentlichungsdaten.
  • Wie viele Projekte diese Komponenten verwenden.
  • Sicherheitsrisikodaten für diese Abhängigkeiten.

Weitere Informationen finden Sie unter Informationen zur Abhängigkeitsüberprüfung und unter Überprüfen von Abhängigkeitsänderungen in einem Pull Request.

Informationen zur Abhängigkeitsüberprüfung

Die Abhängigkeitsüberprüfung ist verfügbar, wenn das Abhängigkeitsdiagramm für Ihre GitHub Enterprise Server-Instance und Advanced Security für die Organisation oder das Repository aktiviert sind. Weitere Informationen findest du unter Aktivieren von GitHub Advanced Security für dein Unternehmen.

Überprüfen des Status des Abhängigkeitsdiagramms

  1. Navigiere auf Ihre GitHub Enterprise Server-Instance zur Hauptseite des Repositorys.

  2. 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.

    Screenshot eines Repositoryheaders mit den Registerkarten. Die Registerkarte „Einstellungen“ ist dunkelorange umrandet.

  3. Klicke im Abschnitt „Sicherheit“ auf der Randleiste auf Codesicherheit und -analyse.

  4. Überprüfe unter „Sicherheits- und Analysefeatures konfigurieren“, ob das Abhängigkeitsdiagramm aktiviert ist.

  5. Wenn das Abhängigkeitsdiagramm aktiviert ist, kannst du neben GitHub Advanced Security auf Aktivieren klicken, um Advanced Security einschließlich des Abhängigkeitsdiagramms zu aktivieren. Die Schaltfläche Aktivieren ist deaktiviert, wenn dein Unternehmen über keine Lizenzen für Advanced Securityverfügt. Screenshot: "Codesicherheits- und Analysefeatures"

Konfigurieren des Abhängigkeitsüberprüfungsaktion

Die Abhängigkeitsüberprüfungsaktion prüft deine Pull Requests auf Änderungen bei Abhängigkeiten und gibt einen Fehler aus, wenn neue Abhängigkeiten bekannte Sicherheitsrisiken aufweisen. Die Aktion wird von einem API-Endpunkt unterstützt, der die Abhängigkeiten zwischen zwei Revisionen vergleicht und etwaige Unterschiede meldet.

Weitere Informationen zur Aktion und zum API-Endpunkt finden Sie in der Dokumentation dependency-review-action und unter „REST-API-Endpunkte für die Abhängigkeitsüberprüfung“.

Hier finden Sie eine Liste der gängigen Konfigurationsoptionen. Weitere Informationen und eine vollständige Liste der Optionen finden Sie unter Überprüfung der Abhängigkeit von GitHub Marketplace.

OptionErforderlichVerbrauch
fail-on-severityDefiniert den Schwellenwert für den Schweregrad (low, moderate, high, critical).
Die Aktion schlägt bei allen Pull Requests fehl, die Sicherheitsrisiken des angegebenen oder eines höheren Schweregrads einführen.
comment-summary-in-prAktivieren oder deaktivieren Sie die Meldung der Prüfungs-Zusammenfassung als Kommentar im Pull Request. Wenn diese Option aktiviert ist, müssen Sie dem Workflow oder Auftrag die pull-requests: write-Berechtigung erteilen.
allow-ghsasEnthält eine Liste von GitHub Advisory Database-IDs, die während der Erkennung übersprungen werden können. Die möglichen Werte für diesen Parameter findest du in der GitHub Advisory Database.
config-fileGibt einen Pfad zu einer Konfigurationsdatei an. Die Konfigurationsdatei kann sich lokal im Repository befinden oder eine Datei in einem externen Repository sein.

Konfigurieren des Abhängigkeitsüberprüfungsaktion

Es gibt zwei Methoden zum Konfigurieren des Abhängigkeitsüberprüfungsaktion:

  • Inlinekonfiguration der Konfigurationsoptionen in deiner Workflowdatei
  • Verweis auf eine Konfigurationsdatei in deiner Workflowdatei

Beachte, dass in allen Beispielen anstelle der SemVer-Versionsnummer (z. B. v3.0.8) eine kurze Versionsnummer für die Aktion verwendet wird (v3). Dadurch wird sichergestellt, dass du die neueste Nebenversion der Aktion verwendest.

Einrichten des Abhängigkeitsüberprüfungsaktion mithilfe der Inlinekonfiguration

  1. Füge deinem Ordner .github/workflows einen neuen YAML-Workflow hinzu.

    Für runs-on lautet die Standardbezeichnung self-hosted. Du kannst die Standardbezeichnung durch die Bezeichnung für einen beliebigen deiner Runner ersetzen.

    YAML
    name: 'Dependency Review'
    on: [pull_request]
    
    permissions:
      contents: read
    
    jobs:
      dependency-review:
        runs-on: [self-hosted]
        steps:
         - name: 'Checkout Repository'
           uses: actions/checkout@v4
         - name: Dependency Review
           uses: actions/dependency-review-action@v4
    
  2. Lege die Einstellungen fest.

    Diese Beispieldatei für den Abhängigkeitsüberprüfungsaktion veranschaulicht, wie du die verfügbaren Konfigurationsoptionen verwenden kannst.

    YAML
    name: 'Dependency Review'
    on: [pull_request]
    
    permissions:
      contents: read
    
    jobs:
      dependency-review:
        runs-on: [self-hosted]
        steps:
        - name: 'Checkout Repository'
          uses: actions/checkout@v4
        - name: Dependency Review
          uses: actions/dependency-review-action@v4
          with:
            # Possible values: "critical", "high", "moderate", "low"
            fail-on-severity: critical
    
            
            # ([String]). Skip these GitHub Advisory Database IDs during detection (optional)
            # Possible values: Any valid GitHub Advisory Database ID from https://github.com/advisories
            allow-ghsas: GHSA-abcd-1234-5679, GHSA-efgh-1234-5679
            
            # ([String]). Block pull requests that introduce vulnerabilities in the scopes that match this list (optional)
            # Possible values: "development", "runtime", "unknown"
            fail-on-scopes: development, runtime
            
    

Einrichten des Abhängigkeitsüberprüfungsaktion mithilfe einer Konfigurationsdatei

  1. Füge deinem Ordner .github/workflows einen neuen YAML-Workflow hinzu, und gib mithilfe von config-file an, dass du eine Konfigurationsdatei verwendest.

    Für runs-on lautet die Standardbezeichnung self-hosted. Du kannst die Standardbezeichnung durch die Bezeichnung für einen beliebigen deiner Runner ersetzen.

    YAML
    name: 'Dependency Review'
    on: [pull_request]
    
    permissions:
     contents: read
    
    jobs:
      dependency-review:
        runs-on: [self-hosted]
        steps:
        - name: 'Checkout Repository'
          uses: actions/checkout@v4
        - name: Dependency Review
          uses: actions/dependency-review-action@v4
          with:
           # ([String]). Representing a path to a configuration file local to the repository or in an external repository.
           # Possible values: An absolute path to a local file or an external file.
           config-file: './.github/dependency-review-config.yml'
           # Syntax for an external file: OWNER/REPOSITORY/FILENAME@BRANCH
           config-file: 'github/octorepo/dependency-review-config.yml@main'
    
           # ([Token]) Use if your configuration file resides in a private external repository.
           # Possible values: Any GitHub token with read access to the private external repository.
           external-repo-token: 'ghp_123456789abcde'
    
  2. Erstelle die Konfigurationsdatei in dem von dir angegebenen Pfad.

    Diese YAML-Beispieldatei veranschaulicht, wie du die verfügbaren Konfigurationsoptionen verwenden kannst.

    YAML
      # Possible values: "critical", "high", "moderate", "low"
      fail-on-severity: critical
    
       # ([String]). Skip these GitHub Advisory Database IDs during detection (optional)
       # Possible values: Any valid GitHub Advisory Database ID from https://github.com/advisories
      allow-ghsas:
        - GHSA-abcd-1234-5679
        - GHSA-efgh-1234-5679
    
       # ([String]). Block pull requests that introduce vulnerabilities in the scopes that match this list (optional)
       # Possible values: "development", "runtime", "unknown"
      fail-on-scopes:
        - development
        - runtime
    
    

Weitere Details zu den Konfigurationsoptionen findest du unter dependency-review-action.