Skip to main content

Einrichten der GitLab-Integration mit Corgea

Mit Corgeas GitLab-Integration verbinden Sie Ihre GitLab-Repositorys mit Corgeas Funktionen zur Erkennung und Behebung von Schwachstellen. Die Integration scannt Code in Merge Requests automatisch und veröffentlicht ausführliche Kommentare zu erkannten Issues und vorgeschlagenen Fixes. Über Dropsite können Sie außerdem GitLab-Repositorys zu Corgea hinzufügen und direkt aus Corgea Merge Requests für erkannte Issues erstellen.

Voraussetzungen

Für die GitLab-Integration benötigen Sie:
  1. Ein Corgea-Konto
  2. Ein GitLab-Konto mit einem Repository, das Sie integrieren möchten

Einrichtung der Integration

1

Integrationen aufrufen

Melden Sie sich bei Corgea an und öffnen Sie den Bereich “Integrations”.
2

GitLab-Integration hinzufügen

Klicken Sie auf “Add Integration” und wählen Sie “GitLab” aus der Liste.
3

Integration konfigurieren

Geben Sie im Formular “Add GitLab Integration” folgende Informationen ein:
  • Name: Ein beschreibender Name für Ihre GitLab-Integration.
  • GitLab-URL: Die Basis-URL Ihrer GitLab-Instanz (zum Beispiel https://gitlab.com oder https://gitlab.example.com für eine selbst gehostete Instanz).
  • Secure Token: Ein Personal Access Token mit den erforderlichen Berechtigungen für den Zugriff auf Ihr GitLab-Repository. Ein neues Token können Sie gemäß der GitLab-Dokumentation erstellen.
  • Only list member projects: Diese standardmäßig aktivierte Option beschränkt die Repository-Auswahl auf Projekte, in denen der Token-Owner Mitglied ist. Deaktivieren Sie sie, um auch andere für das Token zugängliche Projekte aufzulisten, beispielsweise öffentliche Projekte oder Projekte, die über Administrator- oder Auditorzugriff verfügbar sind.
  • Comment on Merge Requests: Aktivieren Sie diese Option, damit Corgea Merge Requests automatisch mit erkannten Schwachstellen und vorgeschlagenen Fixes kommentiert.
4

Konfiguration speichern

Klicken Sie auf “Save”, um die GitLab-Integration zu erstellen.

Einrichten von GitLab

Um Corgea das Scannen Ihrer Repositories und das Kommentieren von Merge Requests zu ermöglichen, müssen Sie einige Einstellungen in GitLab konfigurieren:
1

Zugriffstoken erstellen

Empfohlen: Erstellen Sie in GitLab einen eigenen Corgea-Benutzer, damit Kommentare und Merge Requests eindeutig Corgea zugeordnet werden.Option 1: Persönliches Zugriffstoken (unter Corgea-Benutzer)
  1. Erstellen Sie ein neues GitLab-Benutzerkonto mit dem Namen “Corgea” (oder ähnlich)
  2. Melden Sie sich beim Corgea-Benutzerkonto an
  3. Öffnen Sie User Settings > Access Tokens
  4. Erstellen Sie ein neues Token mit folgenden Scopes:
    • api (Lese-/Schreibzugriff auf die API)
    • read_api
    • read_repository
    • write_repository
  5. Kopieren Sie das generierte Token; Sie benötigen es zum Einrichten der Corgea-Integration
Option 2: Group Access Token
  1. Öffnen Sie Settings > Access Tokens Ihrer Gruppe
  2. Erstellen Sie ein neues Group Access Token mit denselben Scopes
  3. Dieses Token gilt für alle Projekte der Gruppe
  4. Kopieren Sie das generierte Token; Sie benötigen es zum Einrichten der Corgea-Integration
2

Webhook konfigurieren

Für einen Webhook auf Projektebene:
  1. Öffnen Sie Settings > Webhooks des Projekts
  2. Fügen Sie einen Webhook mit folgenden Einstellungen hinzu:
    • URL: https://www.corgea.app/gitlab_webhook/ (oder die für Sie bereitgestellte Webhook-URL)
    • Custom Header: Fügen Sie X-Corgea-UUID mit dem Wert aus Integrations > GitLab > View All hinzu
    • Trigger auswählen:
      • Merge request events
      • Comments
  1. Klicken Sie auf “Add webhook”
Für Webhook auf Gruppenebene:
  1. Gehen Sie zu den Einstellungen Ihrer Gruppe > Webhooks
  2. Folgen Sie denselben Schritten wie oben
  3. Der Webhook wird auf alle Projekte in der Gruppe angewendet
3

Konfiguration überprüfen

  1. Erstellen Sie einen Test-Merge-Request
  2. Prüfen Sie, ob Corgea den Webhook empfängt und den Merge Request kommentiert
  3. Überprüfen Sie die letzten Webhook-Zustellungen in GitLab, um eine erfolgreiche Kommunikation sicherzustellen

Hinzufügen von Repositories aus GitLab über die Dropsite

1

Auf Dropsite zugreifen

Melden Sie sich bei Ihrem Corgea-Konto an und navigieren Sie zum Abschnitt Dropsite.
2

Verbindungsmethode auswählen

Wählen Sie im Schritt “Add your code” die Option “Connect Corgea”.
3

GitLab auswählen

Wählen Sie die “GitLab”-Integration aus der Liste der verfügbaren Integrationen aus.
4

Repository auswählen

Wählen Sie das Repository und den Branch aus, den Sie von Ihrem GitLab-Konto scannen möchten.
5

Scan starten

Klicken Sie auf “Confirm”, um den Scan zu starten.
Corgea ruft den Code aus dem ausgewählten Repository und Branch ab und führt einen umfassenden Sicherheitsscan durch.

Merge Requests aus Corgea-Issues erstellen

Wenn Corgea ein Security-Issue erkennt und einen Fix generiert, können Sie direkt auf der Seite “Issue Details” einen Merge Request erstellen:
  1. Öffnen Sie für die zu behebende Schwachstelle die Seite “Issue Details”
  2. Suchen Sie in dem Dropdown-Menü nach der Option “Issue MR”
  3. Klicken Sie auf “Issue MR”, damit Corgea automatisch:
    • Einen neuen Branch vom konfigurierten Base-Branch erstellt
    • Den Fix mit einer aussagekräftigen Commit-Message committet
    • Einen Merge Request mit den Änderungen erstellt
    • Einen ausführlichen Kommentar zur Schwachstelle und zum Fix hinzufügt (falls aktiviert)
Der MR-Link wird auf der Seite mit den Issue-Details angezeigt, um einen einfachen Zugriff zu ermöglichen. Sie können dann Ihrem normalen GitLab-Workflow folgen, um die Änderungen zu überprüfen und zusammenzuführen.

Wie die Integration funktioniert

Nach der Einrichtung scannt Corgea Ihren Code automatisch, sobald ein Merge Request erstellt oder aktualisiert wird:
  1. Wenn ein Merge Request in Ihrem GitLab-Repository erstellt oder aktualisiert wird, erhält Corgea eine Webhook-Benachrichtigung von GitLab.
  2. Corgea ruft die Codeänderungen aus dem Merge Request ab und führt einen umfassenden Sicherheitsscan durch.
  3. Bei erkannten Schwachstellen kommentiert Corgea den Merge Request mit Details zu den Issues und vorgeschlagenen Fixes. Kommentare werden nur an Zeilen im Merge-Request-Diff platziert. Bei mehrzeiligen Issues verankert Corgea den Kommentar an der ersten geänderten Zeile im betroffenen Codebereich.
  4. Sie können die Kommentare überprüfen und die vorgeschlagenen Korrekturen anwenden, um die Schwachstellen zu beheben, bevor Sie den Code zusammenführen.

Vorteile der GitLab-Integration

Die GitLab-Integration bietet folgende Vorteile:
  • Automatisches Sicherheitsscanning: Corgea scannt Ihren Code während des Merge Request-Prozesses automatisch auf Schwachstellen und stellt sicher, dass Sicherheitsprobleme früh im Entwicklungszyklus erkannt werden.
  • Detaillierte Sicherheitsberichte: Corgea liefert detaillierte Informationen über identifizierte Schwachstellen, einschließlich ihrer Schwere, ihres Standorts und ihrer potenziellen Auswirkungen.
  • Fix-Vorschläge: Corgea erkennt Schwachstellen und schlägt Fixes vor, mit denen Sie Issues schnell und effizient beheben können.
  • Nahtlose Integration: Die GitLab-Integration fügt sich nahtlos in Ihren bestehenden Entwicklungsworkflow ein, minimiert Unterbrechungen und gewährleistet einen reibungslosen Security Review-Prozess.
  • Verbesserte Code Quality: Durch die frühzeitige Behebung von Sicherheitslücken im Entwicklungszyklus können Sie die Gesamtqualität und Sicherheit Ihres Codes verbessern.
  • Flexible Scanoptionen: Zusätzlich zum automatischen Merge Request-Scan können Sie die Dropsite-Funktion verwenden, um Repositories bei GitLab nach Bedarf zu scannen.
  • Implementierung von Fixes mit einem Klick: Erstellen Sie Merge Requests direkt von der Issue-Details-Seite von Corgea, um Fixes mit minimalem Aufwand umzusetzen.
Mit Corgeas GitLab-Integration und Dropsite erhöhen Sie die Sicherheit Ihrer Anwendungen und optimieren gleichzeitig Ihre Entwicklungsprozesse. So stellen Sie Ihren Benutzern sicherere und zuverlässigere Software bereit.