Single Sign-On (SSO) einrichten
Du kannst dein Zammad so konfigurieren, dass sich deine Agenten per Single Sign-On (SSO) über deinen Identity-Provider anmelden. Zammad unterstützt dafür OpenID Connect (OIDC) und SAML – es funktioniert also mit Authentik, Keycloak, Zitadel, Microsoft Entra ID und anderen SSO-fähigen Providern. Diese Anleitung zeigt das Vorgehen am Beispiel von Authentik mit OpenID Connect.
Für neue Anbindungen empfehlen wir OpenID Connect: OIDC baut auf OAuth 2.0 auf, arbeitet mit JSON statt XML und ist deutlich einfacher einzurichten als SAML – ohne Austausch von XML-Metadaten oder Signatur-Zertifikaten. Wenn du stattdessen SAML brauchst (z. B. für Single Logout), unterstützt Zammad das ebenfalls; die Grundschritte auf Authentik-Seite sind vergleichbar.
Die Einrichtung nimmst du direkt im Zammad-Admin-Bereich vor (Verwaltung → Sicherheit → Dritt-Applikationen).
- Ein aktives Zammad-Abonnement bei server.camp mit Administrator-Zugang
- Eine erreichbare, SSO-fähige Identity-Provider-Instanz (z. B. Managed Authentik bei server.camp)
- Admin-Zugang zu beiden Systemen
Redirect-URI bereithaltenZammad nutzt für OpenID Connect eine feste Callback-URL. Sie lautet:
https://<deine-zammad-domain>/auth/openid_connect/callbackErsetze
<deine-zammad-domain>durch die tatsächliche Adresse deiner Zammad-Instanz. Diese URL trägst du gleich in Authentik als Redirect-URI ein.
- In Authentik öffne Anwendungen → Provider → “Erstellen” → Typ: OAuth2/OpenID Connect
- Fülle die Felder aus:
- Name:
Zammad - Client Type:
Public– Zammad authentifiziert sich per PKCE und benötigt kein Client-Secret - Redirect URIs: die Callback-URL deiner Zammad-Instanz (Typ: Strict):
Achte darauf, dass die URI exakt stimmt – inklusivehttps://<deine-zammad-domain>/auth/openid_connect/callbackhttps://und Pfad. - Signing Key: den Standardschlüssel auswählen (bereits vorhanden)
- Speichern – Authentik zeigt dir jetzt die Client ID an. Diesen Wert brauchst du gleich in Zammad.
- Gehe zu Anwendungen → Anwendungen → “Erstellen”
- Felder ausfüllen:
- Name:
Zammad - Slug:
zammad - Provider: den gerade erstellten
Zammad-Provider auswählen
- Optional: Unter UI Einstellungen ein Zammad-Logo hochladen und die Launch-URL auf
https://<deine-zammad-domain>setzen - Speichern
Zugang auf Gruppen beschränken (empfohlen)Öffne die Anwendung → Reiter Policy / Group / User Bindings → “Erstellen” → Group → diejenige Gruppe wählen, die Zugang zu Zammad erhalten soll (z. B.support-team). So können sich nur Mitglieder dieser Gruppe über Authentik in Zammad anmelden.
Du brauchst gleich zwei Werte aus Authentik:
- die Client ID (aus dem Provider in Schritt 1)
- die Issuer-URL deiner Anwendung:
https://<deine-authentik>/application/o/zammad/
Ersetze <deine-authentik> durch deine tatsächliche Authentik-Adresse und zammad durch den in Schritt 2 vergebenen Slug.
Issuer-URL prüfenUnterhttps://<deine-authentik>/application/o/zammad/.well-known/openid-configurationkannst du im Browser prüfen, ob eine JSON-Antwort erscheint – dann ist die Anwendung korrekt eingerichtet und der Discovery-Endpunkt erreichbar.
- Melde dich als Administrator in Zammad an
- Öffne Verwaltung → Sicherheit → Dritt-Applikationen
- Aktiviere den Schalter “Authentifizierung über OpenID Connect”
- Trage die Werte ein:
| Feld | Wert |
|---|---|
| Anzeigename | Frei wählbar, z. B. Authentik – erscheint auf dem Login-Button |
| Identifier | Die Client ID aus Authentik (Schritt 3) |
| Issuer | Die Issuer-URL aus Schritt 3 |
| PKCE-Methode | S256 |
| Scopes | openid, profile, email (Standard) |
- Speichern
Konten werden automatisch verknüpftZammad gleicht den anmeldenden Nutzer anhand seiner E-Mail-Adresse mit vorhandenen Konten ab und verknüpft sie automatisch. Meldet sich eine Person an, für die noch kein Konto existiert, legt Zammad – abhängig von deinen Sicherheitseinstellungen – ein neues Agenten- oder Kundenkonto an. Prüfe die Standard-Rolle für neu angelegte Konten unter Verwaltung → Sicherheit → Basis.
- Melde dich aus Zammad ab (oder nutze ein privates Browserfenster)
- Auf der Login-Seite erscheint nun zusätzlich ein Button zur Anmeldung über deinen Provider (mit dem in Schritt 4 vergebenen Anzeigenamen)
- Klicke darauf – du wirst zu Authentik weitergeleitet
- Nach der Authentifizierung (und ggf. 2FA) landest du zurück in Zammad und bist angemeldet
Erst testen, dann umstellenDas klassische Login-Formular bleibt neben dem SSO-Button erhalten. So kommst du bei einer fehlerhaften Konfiguration weiterhin mit deinem lokalen Admin-Konto hinein. Deaktiviere den lokalen Login erst, wenn die Anmeldung per SSO zuverlässig funktioniert.
- Rollen: Zammad ordnet über SSO angelegten Nutzern die Standard-Rolle zu (in der Regel
AgentoderCustomer). Eine automatische Zuordnung von Authentik-Gruppen zu Zammad-Rollen ist über OpenID Connect nicht vorgesehen – vergib die Rollen bei Bedarf in Zammad unter Verwaltung → Benutzer. Beschränke stattdessen bereits in Authentik über die Gruppen-Bindung (Schritt 2), wer sich überhaupt anmelden darf. - Zwei-Faktor-Authentifizierung: Konfigurierst du 2FA zentral in Authentik, gilt sie automatisch auch für die Zammad-Anmeldung – du musst 2FA dann nicht zusätzlich in Zammad aktivieren.
- “redirect_uri mismatch” bei Authentik: Prüfe, ob die Redirect-URI in Authentik exakt mit
https://<deine-zammad-domain>/auth/openid_connect/callbackübereinstimmt – inklusive Protokoll (https://) und Pfad. - Kein SSO-Button auf der Login-Seite: Ist der Schalter “Authentifizierung über OpenID Connect” aktiviert und die Konfiguration gespeichert?
- Anmeldung schlägt fehl / Nutzer wird abgewiesen: Prüfe in Authentik, ob der Nutzer Mitglied der Gruppe ist, die an die Zammad-Anwendung gebunden ist (Schritt 2).
- Fehler beim Abruf der Konfiguration: Prüfe, ob die Issuer-URL korrekt ist und der Discovery-Endpunkt (
.well-known/openid-configuration) von Zammad aus erreichbar ist.
Bei Problemen mit der SSO-Integration helfen wir dir gerne unter support@server.camp oder über server.camp/support weiter.