> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enclave.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Enclave in these docs is the code and cloud security platform at enclave.ai. It is not Open Enclave, Intel SGX or other hardware enclaves, or enclave.gg.
> People use Enclave in the web app at https://app.enclave.ai or the desktop app. These docs describe no public Enclave API or CLI, so don't invent endpoints, commands, or config files.
> Connecting an integration needs a person to sign in and approve access in a browser. Tell the user the exact step to take instead of saying you completed it.

# GitLab

> Autorisieren Sie Enclave, Ihre GitLab-Projekte zu lesen, Merge-Request-Analysen auszuführen und Findings als MR-Kommentare zu veröffentlichen.

Verbinden Sie GitLab, damit Enclave Ihre Projekte lesen, Merge Requests prüfen und mit verifizierten Findings kommentieren kann. Funktioniert mit GitLab.com und selbst gehostetem GitLab ab Version 14.

## Bevor Sie beginnen

* Sie benötigen in Enclave die Rolle **Owner** oder **Admin**.
* Enclave listet die GitLab-Gruppen auf, in denen Sie mindestens die Rolle **Developer** haben.
* Um den Webhook hinzuzufügen, benötigen Sie die Rolle **Maintainer** für jedes Projekt oder die Rolle **Owner** für die Gruppe. Gruppen-Webhooks erfordern GitLab Premium oder Ultimate.
* Bei selbst gehostetem GitLab benötigt das Access Token den Scope `api` und die Rolle **Maintainer**.

> [!WARNING]
>
> Ohne den Webhook kann Enclave keine neuen Commits oder Merge Requests sehen, und die Verbindung bleibt ausstehend.

## GitLab verbinden

**1. Integrationen öffnen**

Öffnen Sie **Settings → Integrations** in [app.enclave.ai](https://app.enclave.ai). Klicken Sie neben **GitLab** auf **Connect**.

**2. GitLab autorisieren**

Wählen Sie **GitLab.com**, melden Sie sich bei Ihrem GitLab-Konto an und autorisieren Sie die Enclave-Anwendung.

> [!NOTE]
>
> Über GitLab-OAuth erhält Enclave den Scope `api`. GitLab bietet keinen engeren Scope, der das Veröffentlichen von MR-Kommentaren und das Verwalten von Webhooks erlaubt. Enclave nutzt ihn, um Projekte und Merge Requests zu lesen, MR-Kommentare zu veröffentlichen und Webhook-Ereignisse zu empfangen.

> [!TIP]
>
> Sie verwenden selbst gehostetes GitLab? Wählen Sie **Self-hosted GitLab**. Geben Sie die URL Ihrer Instanz ohne `/api/v4` ein und fügen Sie ein Access Token mit dem Scope `api` und der Rolle **Maintainer** ein. Fügen Sie ein privates CA-Bundle hinzu, wenn Ihre Instanz eine interne Zertifizierungsstelle verwendet. Klicken Sie dann auf **Validate & connect**. Wenn Ihr Plan kein selbst gehostetes GitLab umfasst, führt **Connect** direkt zu GitLab.com.

**3. Webhook hinzufügen**

Enclave zeigt eine **Webhook URL** und ein **Secret token** an. Kopieren Sie beides. Das Secret wird nur einmal angezeigt.

Öffnen Sie in GitLab Ihr Projekt (oder bei selbst gehostetem GitLab Ihre Gruppe) und gehen Sie zu **Settings → Webhooks**. Fügen Sie die URL und das Secret Token ein, aktivieren Sie **Push events** und **Merge request events** und klicken Sie auf **Add webhook**. Klicken Sie auf **Test**, um eine Testzustellung zu senden.

Die Verbindung bleibt ausstehend, bis das erste Ereignis eintrifft.

**4. Projekte für MR-Reviews auswählen**

Automatische Reviews sind standardmäßig für jedes GitLab-Projekt aktiviert. Um sie für ein Projekt zu deaktivieren, verwenden Sie dessen Schalter **PR Reviews** unter **Coverage → Repositories**. Siehe [PR- und Abhängigkeitsanalyse](https://docs.enclave.ai/de/risk/pr-analysis.md).

## Tipps

* **Erstellen Sie ein eigenes GitLab-Konto** für Enclave, damit MR-Kommentare eindeutig zugeordnet sind. Bei selbst gehostetem GitLab ist ein Service-Account-Token am besten, danach ein Group Access Token. Ein persönliches Token funktioniert auch, aber dann erscheint jeder Kommentar unter Ihrem Namen.
* **Verbinden Sie jedes Projekt eines Systems.** Enclave findet serviceübergreifende Probleme nur, wenn es sowohl den Service als auch die von ihm aufgerufenen APIs sehen kann.

## Fehlerbehebung

Bei selbst gehostetem GitLab prüft **Validate & connect** zuerst Ihre URL und Ihr Token:

* **Enclave requires GitLab 14 or newer**: Aktualisieren Sie Ihre Instanz.
* **GitLab rejected the token** oder **The token must include the 'api' scope**: Stellen Sie ein neues Token mit dem Scope `api` aus.
* **The token authenticated but cannot see any projects**: Fügen Sie das Token zuerst einer Gruppe oder einem Projekt hinzu.
* **We refused to call that URL**: Der Hostname wurde zu einer privaten oder internen Adresse aufgelöst. Enclave verbindet sich nicht mit solchen Adressen.
* **We could not reach your GitLab instance**: Prüfen Sie die URL und Ihre Firewall-Regeln.

Um ein Token für selbst gehostetes GitLab zu rotieren, verbinden Sie sich erneut mit einem neuen Token für dieselbe Instanz. Enclave aktualisiert die bestehende Verbindung, und Ihr Webhook funktioniert weiter. Widerrufen Sie anschließend das alte Token in GitLab.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.