# Webhook Authorization Header - Anleitung Der Webhook unterstützt **zwei Authentifizierungsmethoden**: 1. **Signature-Verification** (Standard, von Gitea) 2. **Authorization Header** (Optional, zusätzliche Sicherheit) ## Option 1: Nur Signature (Standard) Das ist die Standard-Methode, die Gitea automatisch verwendet: ### Konfiguration In `server/.env`: ```bash GITEA_WEBHOOK_SECRET=dein_secret_hier ``` ### In Gitea - **Secret:** Trage das gleiche Secret ein - **Authorization Header:** Nicht nötig Gitea sendet automatisch den `X-Gitea-Signature` Header. ## Option 2: Authorization Header (Zusätzliche Sicherheit) Falls du zusätzliche Sicherheit möchtest oder den Webhook manuell aufrufst: ### Schritt 1: Token generieren ```bash node -e "console.log(require('crypto').randomBytes(16).toString('hex'))" ``` ### Schritt 2: Server konfigurieren In `server/.env`: ```bash GITEA_WEBHOOK_SECRET=dein_secret_hier GITEA_WEBHOOK_AUTH_TOKEN=dein_auth_token_hier ``` ### Schritt 3: In Gitea konfigurieren Gitea unterstützt **keine** Authorization Header direkt, aber du kannst: #### Option A: Nur Signature verwenden (empfohlen) - Lass `GITEA_WEBHOOK_AUTH_TOKEN` leer - Nur `GITEA_WEBHOOK_SECRET` verwenden #### Option B: Manuelle Webhook-Aufrufe Wenn du den Webhook manuell aufrufst (z.B. via curl), verwende: ```bash curl -X POST https://emailsorter.webklar.com/api/webhook/gitea \ -H "Content-Type: application/json" \ -H "X-Gitea-Signature: sha256=..." \ -H "Authorization: Bearer dein_auth_token_hier" \ -d '{"ref":"refs/heads/main",...}' ``` ## Option 3: Beide Methoden kombinieren Für maximale Sicherheit kannst du beide verwenden: ```bash # In server/.env GITEA_WEBHOOK_SECRET=secret_fuer_signature GITEA_WEBHOOK_AUTH_TOKEN=token_fuer_auth_header ``` **Verhalten:** - Wenn beide gesetzt sind, müssen **beide** passen - Wenn nur eine gesetzt ist, reicht diese ## Empfehlung **Für Gitea-Webhooks:** Verwende nur `GITEA_WEBHOOK_SECRET` (Signature) **Für manuelle Aufrufe:** Verwende `GITEA_WEBHOOK_AUTH_TOKEN` (Authorization Header) **Für maximale Sicherheit:** Verwende beide