Skip to main content
server.camp Docs
server.camp Docs
server.camp Wechsel zwischen Dunkel/Hell/Auto Modus Wechsel zwischen Dunkel/Hell/Auto Modus Wechsel zwischen Dunkel/Hell/Auto Modus Zurück zur Startseite

Single Sign-On (SSO) einrichten

Du kannst dein HedgeDoc so konfigurieren, dass sich Nutzer per Single Sign-On (SSO) gegen deinen Identity-Provider anmelden. HedgeDoc nutzt dafür generisches OAuth2 mit expliziten Endpunkten (also ohne Discovery) – es funktioniert damit mit Authentik, Keycloak, Zitadel und anderen OAuth2-fähigen Providern. Diese Anleitung zeigt das Vorgehen am Beispiel von Authentik (Managed Authentik bei server.camp).

Die gesamte Konfiguration erfolgt self-service in deinem server.camp-Kundenportal – ohne Support, in allen Tarifen. Einen separaten Enable-Schalter gibt es nicht: SSO ist aktiv, sobald die Pflichtfelder gesetzt sind.

Voraussetzungen

  • Ein aktives HedgeDoc-Abonnement bei server.camp
  • Eine erreichbare, OAuth2-fähige Identity-Provider-Instanz (z. B. Managed Authentik bei server.camp)
  • Admin-Zugang zu beiden Systemen

Schritt 1: Provider in Authentik anlegen

  1. In Authentik öffne Anwendungen → Provider
  2. Klicke auf “Erstellen” → Typ: OAuth2/OpenID Connect
  3. Fülle die Felder aus:
  • Name: HedgeDoc
  • Client Type: Confidential
  • Redirect URIs: https://<deine-hedgedoc-domain>/auth/oauth2/callback
  • Signing Key: Den Standardschlüssel auswählen (bereits vorhanden)
  1. Speichern – Authentik generiert automatisch Client ID und Client Secret. Diese beiden Werte brauchst du später im Portal.
Client ID und Secret notieren
Öffne den gerade erstellten Provider erneut und kopiere Client ID und Client Secret in einen Texteditor. Du brauchst sie gleich im server.camp-Portal.

Schritt 2: Anwendung in Authentik anlegen

  1. Gehe zu Anwendungen → Anwendungen“Erstellen”
  2. Felder ausfüllen:
  • Name: HedgeDoc
  • Slug: hedgedoc
  • Provider: den gerade erstellten HedgeDoc-Provider auswählen
  1. Optional: Unter UI Einstellungen ein HedgeDoc-Logo hochladen und die Launch-URL auf https://<deine-hedgedoc-domain> setzen
  2. Speichern
Zugang auf Gruppen beschränken (empfohlen)
Öffne die Anwendung → Reiter Policy / Group / User Bindings → “Erstellen” → Group → diejenige Gruppe wählen, die Zugang zu HedgeDoc erhalten soll (z. B. alle-mitarbeiter). So können sich nur Mitglieder dieser Gruppe über Authentik in HedgeDoc einloggen.

Schritt 3: Endpunkte in Authentik ermitteln

HedgeDoc benötigt die drei OAuth2-Endpunkte explizit (es gibt keine automatische Discovery). Du findest sie in Authentik unter dem Provider bzw. der Anwendung. Sie lauten:

Authorization: https://<deine-authentik>/application/o/authorize/
Token:         https://<deine-authentik>/application/o/token/
Userinfo:      https://<deine-authentik>/application/o/userinfo/

Ersetze <deine-authentik> durch deine tatsächliche Authentik-Adresse. Die abschließenden Schrägstriche gehören dazu.

Schritt 4: Werte im server.camp-Portal eintragen

Öffne im Kundenportal die Konfiguration deines HedgeDoc-Abonnements und trage die folgenden Werte ein:

Feld Wert
Anzeigename des Login-Buttons Frei wählbar, z. B. Login mit Authentik – erscheint als Beschriftung des Buttons
Authorization-URL Authorization-Endpunkt aus Schritt 3
Token-URL Token-Endpunkt aus Schritt 3
Userinfo-URL Userinfo-Endpunkt aus Schritt 3
Client-ID Aus Authentik kopiert (Schritt 1)
Client-Secret Aus Authentik kopiert (Schritt 1)
Scopes Standard openid email profile

Speichern und warten, bis die Bereitstellung abgeschlossen ist (ca. 1–2 Minuten). SSO ist aktiv, sobald diese Pflichtfelder gesetzt sind – einen separaten Enable-Schalter gibt es nicht. Auf der Login-Seite von HedgeDoc erscheint danach ein Button zur Anmeldung über deinen Provider.

Optionale Feineinstellungen

Die folgenden Felder haben sinnvolle Standardwerte und bleiben in den meisten Fällen unverändert. Setze sie nur, wenn dein Identity-Provider die Benutzerdaten unter abweichenden Claims ausliefert:

Feld Standard Wirkung
Claim für Benutzername preferred_username Claim, aus dem der eindeutige Benutzername gelesen wird
Claim für Anzeigename name Claim für den angezeigten Namen des Nutzers
Claim für E-Mail email Claim für die E-Mail-Adresse des Nutzers

Login-Ablauf für deine Nutzer

  1. HedgeDoc im Browser öffnen
  2. Auf der Login-Seite den Button für deinen Provider anklicken (z. B. “Mit Authentik anmelden”)
  3. Weiterleitung zu Authentik, dort anmelden (und ggf. 2FA)
  4. Zurück in HedgeDoc – der Nutzer ist angemeldet
Erst testen, dann umstellen
Teste den SSO-Login mit einem regulären Nutzerkonto, bevor du ihn im Team ausrollst. So stellst du sicher, dass Redirect-URI und Endpunkte korrekt hinterlegt sind, bevor sich alle darauf verlassen.

Fehlerbehebung

  • “Redirect URI mismatch” beim IdP: Die Redirect-URI in Authentik stimmt nicht mit der von HedgeDoc gesendeten überein. Prüfe, ob die URL exakt hinterlegt ist – inklusive https:// und Pfad /auth/oauth2/callback.
  • Kein SSO-Button sichtbar: Sind alle Pflichtfelder (Authorization-, Token-, Userinfo-URL, Client-ID, Client-Secret) im Portal gesetzt und ist die Bereitstellung abgeschlossen?
  • Anmeldung schlägt fehl oder Benutzername fehlt: Prüfe die Scopes (openid email profile) und ob die Claims deines Providers zu den optionalen Feineinstellungen passen (Standard preferred_username, name, email).

Noch Fragen?

Bei Problemen mit der SSO-Integration helfen wir dir gerne unter support@server.camp weiter.