# Anpassung Ihrer Aktionskonfiguration für die Überprüfung von Abhängigkeiten

Erfahre, wie du eine grundlegende Anpassung an deine Konfiguration für die Abhängigkeitsprüfungsaktion hinzufügen kannst.

## Einführung

Die Abhängigkeitsüberprüfungsaktion Pullanforderungen werden auf Abhängigkeitsänderungen überprüft und ein Fehler ausgelöst, wenn neue Abhängigkeiten bekannte Sicherheitsrisiken aufweisen. Wenn die Workflowausführung nach der Installation als erforderlich gekennzeichnet ist, werden Pull Requests, die bekannte anfällige Pakete einführen, an der Zusammenführung gehindert.

In diesem Handbuch wird gezeigt, wie Sie drei häufig verwendete Anpassungen hinzufügen: Fehlgeschlagene Builds basierend auf dem Schweregrad von Schwachstellen, der Abhängigkeitslizenz und dem Geltungsbereich.

### Voraussetzungen

In diesem Leitfaden wird davon ausgegangen, dass:

* Das Abhängigkeitsdiagramm ist für das Repository aktiviert. Weitere Informationen findest du unter [Aktivieren des Abhängigkeitsdiagramms](/de/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/enable-dependency-graph#enabling-the-dependency-graph-for-a-repository).
* GitHub Actions ist für das Repository aktiviert. Weitere Informationen findest du unter [Einstellung der GitHub Actions für ein Repository verwalten](/de/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository).

## Schritt 1: Hinzufügen der Maßnahme zur Überprüfung der Abhängigkeit

In diesem Schritt fügen wir Ihrem Repository den Workflow zur Überprüfung der Abhängigkeit hinzu.

1. Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
2. Klicke unter dem Repositorynamen auf **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-play" aria-label="play" role="img"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z"></path></svg> Actions**.

   ![Screenshot: Registerkarten für das Repository „github/docs“. Die Registerkarte „Aktionen“ ist mit einem orangefarbenen Rahmen hervorgehoben.](/assets/images/help/repository/actions-tab-global-nav-update.png)
3. Klicken Sie unter "Erste Schritte mit GitHub Actions", suchen Sie die Kategorie "Sicherheit", und klicken Sie dann auf " **Alle anzeigen**".
4. Suchen Sie "Überprüfung der Abhängigkeit", und klicken Sie dann auf **Konfigurieren**. Alternativ können Sie mithilfe der Suchleiste nach "Abhängigkeitsprüfung" suchen.
5. Dadurch wird die Workflow-Datei der Abhängigkeitsprüfung GitHub Actions geöffnet, `dependency-review.yml`. Sie sollte Folgendes enthalten:

   ```yaml copy
   name: 'Dependency review'
   on:
     pull_request:
       branches: [ "main" ]

   permissions:
     contents: read

   jobs:
     dependency-review:
       runs-on: ubuntu-latest
       steps:
         - name: 'Checkout repository'
           uses: actions/checkout@v6
         - name: 'Dependency Review'
           uses: actions/dependency-review-action@v4
   ```

## Schritt 2: Ändern des Schweregrads

Sie können code, der anfällige Abhängigkeiten enthält, daran hindern, jemals zusammengeführt zu werden, indem Sie dies Abhängigkeitsüberprüfungsaktion auf "Erforderlich" festlegen. Es lohnt sich jedoch zu beachten, dass das Blockieren von Sicherheitsrisiken mit geringem Risiko in einigen Fällen zu restriktiv sein kann. In diesem Schritt ändern wir den Schweregrad der Sicherheitsanfälligkeit, die dazu führt, dass ein Build mit der Option `fail-on-severity` fehlschlägt.

1. Fügen Sie die Option `fail-on-severity` am Ende der Datei `dependency-review.yml` hinzu:

   ```yaml copy
         - name: 'Dependency Review'
           uses: actions/dependency-review-action@v4
           with:
             fail-on-severity: moderate
   ```

## Schritt 3: Hinzufügen von zu blockierenden Lizenzen

Sicherheitsrisiken sind nicht der einzige Grund, warum Sie eine Abhängigkeit blockieren möchten. Wenn Ihr Unternehmen Beschränkungen hinsichtlich der Art der Lizenzen auferlegt, die Sie verwenden können, können Sie die Abhängigkeitsprüfung verwenden, um diese Richtlinien mit der Option `deny-licenses` zu erzwingen. In diesem Schritt werden wir eine Anpassung hinzufügen, die den Build unterbricht, wenn die Pull-Anfrage eine Abhängigkeit einführt, die die LGPL-2.0- oder BSD-2-Clause-Lizenz enthält.

1. Fügen Sie die Option `deny-licenses` am Ende der Datei `dependency-review.yml` hinzu:

   ```yaml copy
         - name: 'Dependency Review'
           uses: actions/dependency-review-action@v4
           with:
             fail-on-severity: moderate
             deny-licenses: LGPL-2.0, BSD-2-Clause
   ```

## Schritt 4: Hinzufügen von Scopes

Abschließend werden wir die Option `fail-on-scopes` verwenden, um zu verhindern, dass anfällige Abhängigkeiten mit bestimmten Bereitstellungsumgebungen, in diesem Fall der Entwicklungsumgebung, zusammengeführt werden.

1. Fügen Sie die Option `fail-on-scopes` am Ende der Datei `dependency-review.yml` hinzu:

   ```yaml copy
         - name: 'Dependency Review'
           uses: actions/dependency-review-action@v4
           with:
             fail-on-severity: moderate
             deny-licenses: LGPL-2.0, BSD-2-Clause
             fail-on-scopes: development
   ```

## Schritt 5: Überprüfen der Konfiguration

Die Datei `dependency-review.yml` sollte jetzt wie folgt aussehen:

```yaml copy

name: 'Dependency Review'
on: [pull_request]

permissions:
  contents: read

jobs:
  dependency-review:
    runs-on: ubuntu-latest
    steps:
      - name: 'Checkout Repository'
        uses: actions/checkout@v6
      - name: Dependency Review
        uses: actions/dependency-review-action@v4
        with:
          fail-on-severity: moderate
          deny-licenses: LGPL-2.0, BSD-2-Clause
          fail-on-scopes: development
```

Sie können diese Konfiguration als Vorlage für Ihre eigenen benutzerdefinierten Konfigurationen verwenden.

Weitere Informationen zu allen möglichen Anpassungsoptionen finden Sie in der [Infodatei](https://github.com/actions/dependency-review-action/blob/main/README.md#configuration) in der Dokumentation zur Abhängigkeitsüberprüfung.

## Bewährte Methoden

Beim Anpassen der Konfiguration für die Überprüfung der Abhängigkeit gibt es einige bewährte Methoden, die Sie befolgen können:

* Wählen Sie Sperrlisten über Erlaubnislisten. Es ist praktischer, eine Liste der "wirklich schlechten" Abhängigkeiten zu kompilieren, die Sie blockieren möchten, als eine inklusive Liste aller Bibliotheken zu erstellen, die Sie zulassen möchten.

* Wählen Sie aus, ob Lizenzen blockiert werden sollen, anstatt anzugeben, welche Lizenzen zulässig sind. Es gibt eine Vielzahl von Lizenzen, daher ist es in der Regel praktischer, diejenigen auszuschließen, von denen Sie wissen, dass sie mit den aktuellen Lizenzen nicht kompatibel sind, als eine vollständige Liste der kompatiblen Lizenzen zu erstellen.

* Wählen Sie `fail-on-severity` aus. Ein Scheitern aufgrund der Schwere einer Schwachstelle ist eine gute Möglichkeit, um die Notwendigkeit von Sicherheit mit der Notwendigkeit, reibungslose Erfahrungen für Entwickler zu schaffen, in Einklang zu bringen.

## Weiterführende Lektüre

* [Konfigurieren der Aktion zur Überprüfung von Abhängigkeiten](/de/code-security/how-tos/secure-your-supply-chain/manage-your-dependency-security/configure-dependency-review-action)
* [Durchsetzen der Abhängigkeitsüberprüfung in einer Organisation](/de/code-security/how-tos/secure-at-scale/configure-organization-security/configure-specific-tools/enforce-dependency-review)