Zum Inhalt springen
Farbschema wählenSprache wählen

Eine Edition-Lizenz aktivieren

Diese Anleitung führt dich durch die Aktivierung der Enterprise-Edition auf einer selbst gehosteten SupaCloud-Instanz. Enterprise wird freigeschaltet, indem du ein gültiges HS256-Lizenz-Token und ein passendes Signiergeheimnis angibst. Ohne diese Angaben ist die Instanz fail-closed: Ein fehlendes, abgelaufenes oder ungültiges Token führt zur Community-Edition.

  • Eine laufende selbst gehostete SupaCloud-Instanz (siehe Self-Hosting mit Docker Compose).
  • Die Lizenz-Token-Zeichenkette (SUPACLOUD_EDITION_LICENSE).
  • Das HMAC-Signiergeheimnis, mit dem das Token signiert wurde (SUPACLOUD_EDITION_SECRET). Das Geheimnis muss mindestens 32 Byte lang sein; kürzere Geheimnisse werden beim Start abgelehnt und die Instanz fällt auf Community zurück.
  1. Setze die beiden Umgebungsvariablen an dem Ort, von dem dein Deployment liest — .env für Docker Compose, deinen Secrets Manager oder OpenBao (supacloud/app — siehe Secret-Provisioning):

    Variable Wert
    SUPACLOUD_EDITION_LICENSE Das HS256-JWT-Lizenz-Token.
    SUPACLOUD_EDITION_SECRET Das Signiergeheimnis, ≥ 32 Byte.

    Für ein Docker-Compose-Deployment füge beide Variablen zu deiner .env hinzu:

    Terminal window
    SUPACLOUD_EDITION_LICENSE=<dein-lizenz-token>
    SUPACLOUD_EDITION_SECRET=<dein-signiergeheimnis>
  2. Starte den Server neu, damit die neuen Werte eingelesen werden. Die Edition wird einmalig beim Start ermittelt und für die Prozesslaufzeit gecacht:

    Terminal window
    docker compose -f docker-compose.yml -f compose.standalone.yml restart server
  3. Überprüfe die Edition, indem du die Startlogs auf die ermittelte Edition prüfst oder in der Operator-Konsole zu Admin → Features navigierst. Enterprise-Funktionen (zum Beispiel BYO-OIDC Single Sign-On) sollten jetzt verfügbar sein.

Der Server liest SUPACLOUD_EDITION_LICENSE und SUPACLOUD_EDITION_SECRET über resolve_secret — zuerst die Umgebungsvariable, dann die OpenBao-Map supacloud/app, wenn das openbao-Secret-Backend aktiv ist. Anschließend:

  1. Prüft er, ob das Geheimnis mindestens 32 Byte lang ist; kürzere Geheimnisse werden abgelehnt.
  2. Dekodiert und verifiziert er das Token mit dem Algorithmus HS256.
  3. Validiert er den exp-Claim (abgelaufene Tokens werden abgelehnt).
  4. Prüft er, ob der edition-Claim gleich enterprise ist (Groß-/Kleinschreibung wird ignoriert).

Jeder Fehler — falsches Geheimnis, abgelaufenes Token, fehlender Claim oder fehlerhaftes JWT — führt stillschweigend zur Community-Edition. Endnutzern wird kein Fehler angezeigt; eine Warnung wird ins Server-Log geschrieben.

Entwickler-Bypass (nur für Nicht-Produktivumgebungen)

Abschnitt betitelt „Entwickler-Bypass (nur für Nicht-Produktivumgebungen)“

Auf einer lokalen Entwicklungsinstanz kannst du das Lizenz-Token vollständig überspringen, indem du Folgendes setzt:

Terminal window
MODE=dev
SUPACLOUD_EDITION=enterprise