OpenID Connect¶
OpenID ist eine einfache und sichere Möglichkeit für Personen, ein bestehendes Konto und Benutzerprofil von einem OpenID-Anbieter wiederzuverwenden. Verbinden Sie Ihren OpenID-Anbieter (OP) als Single Sign-On (SSO)-Methode.
Die „relying party“ (RP) ist Zammad und der OpenID-Provider ist ein Softwaredienst, den Sie entweder hosten oder abonnieren (z. B. Keycloak).
Hinweis
In dieser Anleitung wird davon ausgegangen, dass Sie OpenID Connect bereits in Ihrer Organisation verwenden (d. h. dass Ihr OP vollständig eingerichtet ist).
Die aktuelle Implementierung von OpenID Connect in Zammad erfordert OpenID Connect Discovery, um die Konfiguration zu vereinfachen.
Die Verbindung zwischen Zammad und Ihrem OP muss gesichert sein. Beide Systeme müssen über HTTPS erreichbar sein. Selbstsignierte Zertifikate werden nicht unterstützt.
Unsere Anleitung basiert auf der Anbindung von Keycloak.
PKCE unterstützt derzeit nur SHA256 als Code-Challenge-Methode.
Schritt 1: Konfigurieren Sie Ihren OP¶
Einen neuen Client hinzufügen¶
Erstellen Sie einen neuen Client in Ihrem OP mit den folgenden Einstellungen:
- General settings
Client type: OpenID Connect
Client ID:
zammad(oder ein anderer passender Name)
- Capability config
Client authentication: Off
Authentication flow: Standard flow
- Login settings
Valid redirect URIs:
https://your.zammad.domain/auth/openid_connect/callbackValid post logout redirect URIs:
https://your.zammad.domain/*Web origins:
+
Setzen Sie in den Logout settings für den neu erstellten Client die Backchannel logout URL auf https://your.zammad.domain/auth/openid_connect/backchannel_logout und schalten Sie die Backchannel logout session required ein.
Wenn Sie PKCE verwenden möchten, müssen Sie auf den Tab Erweitert wechseln und S256 in Erweiterte Einstellungen als Code-Challenge-Methode für PKCE auswählen.
Schritt 2: Zammad konfigurieren¶
Aktivieren Sie OpenID Connect und geben Sie die Daten Ihres OPs in Zammads Admin-Bereich unter Einstellungen > Sicherheit > Anwendungen Dritter > Authentifizierung über OpenID Connect ein:
- Anzeigename
Ermöglicht es Ihnen, einen benutzerdefinierten Schaltflächennamen für OpenID Connect zu definieren. Dies hilft Ihren Benutzern, besser zu verstehen, was die Schaltfläche auf der Anmeldeseite bewirkt.
Die Voreinstellung ist
OpenID Connect.- Identifier
Die Client ID, die Sie in Ihrem OP definiert haben.
- Issuer
Die Issuer-URL Ihres OPs. Wird für die Erkennung verwendet.
- UID-Feld
Hier können Sie ein Attribut definieren, das den Benutzer eindeutig identifiziert. Ist es nicht gesetzt, wird
subverwendet.- Scopes
Die Scoped, die Zammad vom OP abfragen soll. Standardmäßig sind dies
openid,emailundprofile.- PKCE
Derzeit wird nur SHA256 als Code-Challenge-Methode unterstützt.
Siehe Automatische Konto-Verbindung für Details, wie man bestehende Zammad Konten mit OP Konten verknüpft.