Single Sign-On Übersicht¶
Inhaltsverzeichnis¶
- Einführung und Übersicht
- Provider-Anleitungen
- Konfigurationsschritte
- Dashboard-Konfiguration
- Backend-Konfiguration
- Login testen
- Fehlerbehebung
- Unterstützte Provider
Einführung und Übersicht¶
Dieser Leitfaden bietet Schritt-für-Schritt-Anweisungen zur Integration von Single Sign-On (SSO) in die digna-Plattform mithilfe von OpenID Connect (OIDC).
Was ist SSO?¶
Single Sign-On ermöglicht es Benutzern, sich mit ihren Unternehmenszugangsdaten über externe Identity Provider sicher bei digna anzumelden. Anwender können sich mit ihren Firmenzugangsdaten authentifizieren, anstatt separate digna-Passwörter zu verwalten.
Funktionsweise¶
SSO in digna wird über das OIDC-Protokoll umgesetzt. Mehrere Identity Provider können parallel konfiguriert werden, indem zwei zentrale Konfigurationsdateien angepasst werden:
dashboard_config.toml— Steuert die Frontend-Login-Oberflächeconfig.toml— Konfiguriert die Backend-OIDC-Verbindungen
Unterstützte Provider¶
Beispiele in diesem Leitfaden verwenden Microsoft und Google, aber jeder OIDC-kompatible Provider kann nach derselben Struktur integriert werden.
Provider-Anleitungen¶
Jeder Provider benötigt dieselben vier Werte — eine Client-ID, ein Client-Secret, eine Redirect-URI und eine Discovery-URL — aber jeder Anbieter legt diese Werte an anderer Stelle in seiner Admin-Konsole ab, und einige haben provider-spezifische Schritte, die andere nicht haben. Die untenstehenden Anleitungen decken diesen Teil ab; diese Seite behandelt den digna-Teil, der für alle gleich ist.
| Provider | Anleitung | Wissenswert |
|---|---|---|
| AD FS | Set up SSO with AD FS | Self-hosted; der einzige hier, bei dem Sie den Token-Dienst selbst kontrollieren |
| Auth0 | Set up SSO with Auth0 | Discovery-URL ist pro Tenant; benutzerdefinierte Domains ändern sie |
| Google Workspace | Set up SSO with Google Workspace | Der Consent-Screen muss veröffentlicht werden, bevor nicht-test Nutzer sich anmelden können |
| Keycloak | Set up SSO with Keycloak | Self-hosted; Discovery-URL ist pro Realm |
| Microsoft Entra ID | Set up SSO with Microsoft Entra ID | Tenant-ID erscheint in der Discovery-URL; Secrets laufen ab |
| Okta | Set up SSO with Okta | Auswahl des Authorization Servers ändert die Discovery-URL |
| OneLogin | Set up SSO with OneLogin | Der OIDC-App-Typ muss bei der Erstellung gewählt werden und kann später nicht geändert werden |
| PingOne | Set up SSO with PingOne | Environment-ID erscheint in der Discovery-URL |
Jeder andere OIDC-kompatible Provider funktioniert auf die gleiche Weise — siehe Other OIDC Providers.
Konfigurationsschritte¶
Die SSO-Konfiguration erfordert Änderungen an zwei Dateien. Dieser Abschnitt erklärt, wie jede Datei zu konfigurieren ist.
Übersicht der Konfigurationsdateien¶
| Datei | Speicherort | Zweck |
|---|---|---|
| dashboard_config.toml | dashboard/dashboard_config.toml | Frontend-Login-Oberfläche |
| config.toml | /config.toml | Backend-OIDC-Verbindungen |
Beide Dateien müssen für ein funktionierendes SSO korrekt konfiguriert sein.
Dashboard-Konfiguration¶
Dateipfad¶
Schritt 1: OIDC-Provider hinzufügen¶
Fügen Sie Einträge unter dem Array [[login.oidc]] für jeden Identity Provider hinzu, den Sie unterstützen möchten.
Beispiel mit Microsoft und Google:
[[login.oidc]]
key = "microsoft"
label = "Login with Microsoft"
[[login.oidc]]
key = "google"
label = "Login with Google"
Schritt 2: Login-Optionen konfigurieren¶
Geben Sie an, ob passwortbasierte Anmeldungen erlaubt sein sollen:
Konfigurationsparameter¶
[[login.oidc]] Abschnitt¶
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
key | string | Ja | Eindeutiger Bezeichner für die OIDC-Verbindung (muss mit dem key in config.toml übereinstimmen) |
label | string | Ja | Text, der auf dem Login-Button angezeigt wird (z. B. "Login with Microsoft") |
[login] Abschnitt¶
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
usePassword | boolean | false | Erlaubt passwortbasierte Anmeldung zusätzlich zu SSO |
Bedeutung von usePassword¶
Wenn usePassword = true: - Der Login-Bildschirm zeigt SSO-Buttons (z. B. "Login with Microsoft") - Der Login-Bildschirm zeigt zusätzlich Benutzername- und Passwortfelder - Benutzer können sich mit beiden Methoden authentifizieren - Ermöglicht hybride Setups, in denen einige Benutzer SSO und andere Passwörter verwenden
Wenn usePassword = false (oder weggelassen): - Der Login-Bildschirm zeigt nur SSO-Buttons - Keine Benutzername-/Passwortfelder - Nur OIDC-Authentifizierung ist verfügbar
Tipp
Die passwortbasierte Anmeldung ist nur für Benutzer verfügbar, die mit Passwörtern über den Befehl digna user add oder über das Dashboard erstellt wurden.
Komplettes Beispiel¶
[login]
usePassword = true
[[login.oidc]]
key = "microsoft"
label = "Login with Microsoft"
[[login.oidc]]
key = "google"
label = "Login with Google"
[[login.oidc]]
key = "okta"
label = "Login with Okta"
Backend-Konfiguration¶
Dateipfad¶
(Root-Verzeichnis der digna-Installation)
Schritt 1: OIDC-Provider-Abschnitte hinzufügen¶
Jeder Provider muss einen eigenen [oidc.<key>]-Abschnitt haben. Der key muss mit dem in dashboard_config.toml definierten key übereinstimmen.
Microsoft-Konfiguration¶
[oidc.microsoft]
DIGNA_OIDC_CLIENT_ID = "<client_id>"
DIGNA_OIDC_CLIENT_SECRET = "<client_secret>"
DIGNA_OIDC_REDIRECT_URI = "http://localhost:5173/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration"
Google-Konfiguration¶
[oidc.google]
DIGNA_OIDC_CLIENT_ID = "<client_id>"
DIGNA_OIDC_CLIENT_SECRET = "<client_secret>"
DIGNA_OIDC_REDIRECT_URI = "http://localhost:5173/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://accounts.google.com/.well-known/openid-configuration"
Konfigurationsparameter¶
| Parameter | Typ | Erforderlich | Beschreibung | Beispiel |
|---|---|---|---|---|
DIGNA_OIDC_CLIENT_ID | string | Ja | Client-ID vom Identity Provider | abc123xyz789 |
DIGNA_OIDC_CLIENT_SECRET | string | Ja | Client-Secret vom Identity Provider | secret_xyz789abc123 |
DIGNA_OIDC_REDIRECT_URI | string | Ja | Callback-URL nach der Authentifizierung | http://localhost:5173/oidc/callback |
DIGNA_OIDC_CONFIGURATION_URL | string | Ja | OIDC-Konfigurationsendpunkt | https://login.microsoftonline.com/... |
Wichtig
Ersetzen Sie Platzhalterwerte (<client_id>, <client_secret>, <tenant_id>) durch tatsächliche Anmeldeinformationen aus dem Entwicklerportal Ihres Identity Providers.
Redirect URI¶
Die Redirect-URI muss in der Konfiguration Ihres Identity Providers identisch sein:
Wenn digna unter einer anderen Domain gehostet wird, passen Sie diese entsprechend an: - Lokal: http://localhost:5173/oidc/callback - Produktion: https://digna.yourdomain.com/oidc/callback
Komplettes Beispiel¶
[oidc.microsoft]
DIGNA_OIDC_CLIENT_ID = "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
DIGNA_OIDC_CLIENT_SECRET = "abc123xyz789def456ghi"
DIGNA_OIDC_REDIRECT_URI = "https://digna.yourdomain.com/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://login.microsoftonline.com/12345678-1234-1234-1234-123456789012/v2.0/.well-known/openid-configuration"
[oidc.google]
DIGNA_OIDC_CLIENT_ID = "123456789-abcdefghijklmnopqrstuvwxyz.apps.googleusercontent.com"
DIGNA_OIDC_CLIENT_SECRET = "google_secret_xyz789"
DIGNA_OIDC_REDIRECT_URI = "https://digna.yourdomain.com/oidc/callback"
DIGNA_OIDC_CONFIGURATION_URL = "https://accounts.google.com/.well-known/openid-configuration"
Login testen¶
Nachdem Sie die Konfiguration abgeschlossen haben, vergewissern Sie sich, dass SSO korrekt funktioniert.
Vor dem Test: Checkliste¶
Stellen Sie vor dem Test sicher:
-
dashboard_config.tomlwurde mit OIDC-Providern aktualisiert -
config.tomlwurde mit OIDC-Anmeldeinformationen aktualisiert - Beide Dateien wurden gespeichert
- Anmeldeinformationen sind korrekt (Client-ID, Client-Secret)
- Redirect-URI stimmt mit Ihrer Deployment-URL überein
- Die Anwendung beim Identity Provider ist mit der Redirect-URI konfiguriert
Testschritte¶
Schritt 1: Dienste neu starten¶
Starten Sie das digna-Backend und den Webserver neu, um Änderungen anzuwenden.
Wenn als Dienst unter Windows ausgeführt:
Wenn als Dienst unter Linux oder macOS ausgeführt:
Wenn manuell ausgeführt:
Starten Sie auch den Webserver neu — IIS oder Tomcat unter Windows, nginx oder Apache unter Linux und macOS.
Schritt 2: Dashboard öffnen¶
Öffnen Sie das digna-Dashboard in Ihrem Browser:
(oder Ihre konfigurierte Dashboard-URL)
Schritt 3: Login-Buttons prüfen¶
Prüfen Sie, ob Login-Buttons für jeden konfigurierten Provider angezeigt werden:
- Es sollte ein "Login with Microsoft"-Button sichtbar sein
- Es sollte ein "Login with Google"-Button sichtbar sein
- (Wenn usePassword = true) Es sollten Benutzername-/Passwortfelder sichtbar sein
Wenn Buttons nicht angezeigt werden: - Prüfen Sie, ob dashboard_config.toml gespeichert wurde - Prüfen Sie, ob der Dashboard-Service neu gestartet wurde - Prüfen Sie die Browserkonsole (F12) auf Fehler
Schritt 4: SSO-Login testen¶
Klicken Sie einen der SSO-Buttons (z. B. "Login with Microsoft"):
- Sie sollten zur Login-Seite des Identity Providers weitergeleitet werden
- Melden Sie sich mit Ihren Unternehmenszugangsdaten an
- Sie sollten zurück zu digna weitergeleitet werden
- Sie sollten bei digna eingeloggt sein
Schritt 5: Benutzererstellung prüfen¶
Nach erfolgreichem SSO-Login:
- Der Benutzer sollte automatisch in digna angelegt werden
- Der Benutzer sollte eingeloggt sein
- Das Benutzerprofil sollte Ihre Identity-Provider-Daten anzeigen
- Sie sollten das digna-Dashboard sehen
Schritt 6: Passwort-Login testen (falls aktiviert)¶
Wenn usePassword = true:
- Melden Sie sich bei digna ab
- Geben Sie auf der Loginseite Benutzername und Passwort ein
- Sie sollten sich mit Passwort anmelden können
Fehlerbehebung¶
Login-Buttons werden nicht angezeigt¶
Symptome: - OIDC-Login-Buttons nicht auf der Login-Seite sichtbar - Nur Passwortfelder sichtbar (wenn usePassword = true)
Ursachen & Lösungen: 1. Prüfen Sie, ob dashboard_config.toml im Verzeichnis dashboard/ liegt 2. Vergewissern Sie sich, dass [[login.oidc]]-Abschnitte mit korrekter Syntax vorhanden sind 3. Starten Sie den Dashboard-Service neu 4. Löschen Sie den Browser-Cache (Strg+Shift+Entf oder Cmd+Shift+Entf) 5. Prüfen Sie die Browserkonsole (F12 → Console) auf Fehler
Redirect-URI Mismatch-Fehler¶
Symptome: - Nach Klick auf den SSO-Button erscheint ein Fehler zu "redirect_uri mismatch" - Fehler "The redirect URI is not registered"
Ursachen & Lösungen: 1. Überprüfen Sie DIGNA_OIDC_REDIRECT_URI in config.toml 2. Vergewissern Sie sich, dass die Redirect-URI im Identity Provider registriert ist 3. Stellen Sie sicher, dass beide exakt identische URLs verwenden (inkl. Protokoll, Domain, Pfad) 4. Prüfen Sie auf Tippfehler in der Redirect-URI 5. Wenn HTTPS verwendet wird, stellen Sie sicher, dass das Zertifikat gültig ist
Ungültige Client-Anmeldeinformationen¶
Symptome: - Fehler "Invalid client ID or secret" - Authentifizierung schlägt mit Anmeldeinformationsfehler fehl
Ursachen & Lösungen: 1. Überprüfen Sie DIGNA_OIDC_CLIENT_ID und DIGNA_OIDC_CLIENT_SECRET auf Richtigkeit 2. Stellen Sie sicher, dass keine zusätzlichen Leerzeichen oder Sonderzeichen vorhanden sind 3. Prüfen Sie, ob die Anmeldeinformationen nicht abgelaufen oder widerrufen wurden 4. Starten Sie das Backend neu, nachdem Sie die Konfiguration aktualisiert haben 5. Prüfen Sie das Identity Provider-Portal, um zu bestätigen, dass die Anmeldeinformationen aktiv sind
Login hängt oder läuft in einen Timeout¶
Symptome: - Klick auf den SSO-Button bewirkt nichts - Timeout nach einigen Sekunden - Browser zeigt "Failed to connect" oder ähnliches
Ursachen & Lösungen: 1. Vergewissern Sie sich, dass das digna-Backend läuft: digna repo check 2. Prüfen Sie die Netzwerkverbindung zum Identity Provider 3. Stellen Sie sicher, dass DIGNA_OIDC_CONFIGURATION_URL erreichbar ist 4. Prüfen Sie Firewall-Regeln, die ausgehende HTTPS-Verbindungen blockieren könnten 5. Prüfen Sie, ob Backend und Dashboard sich gegenseitig erreichen können
Benutzer werden nicht automatisch erstellt¶
Symptome: - SSO-Login gelingt, aber Benutzer wird nicht in digna angelegt - Nach SSO-Login tritt ein Berechtigungsfehler auf
Ursachen & Lösungen: 1. Überprüfen Sie, ob die OIDC-Konfiguration korrekt ist 2. Prüfen Sie, ob Benutzerberechtigungen korrekt eingerichtet sind 3. Überprüfen Sie die digna-Logs auf Fehlermeldungen 4. Starten Sie das Backend neu 5. Kontaktieren Sie support@digna.ai, wenn das Problem weiterhin besteht
Unterstützte Provider¶
Getestet & Unterstützt¶
Die folgenden OIDC-Provider wurden getestet und sind bekannt, dass sie funktionieren:
| Provider | Konfigurations-URL | Einrichtungsanleitung |
|---|---|---|
| AD FS | https://<adfs_host>/adfs/.well-known/openid-configuration | Set up SSO with AD FS |
| Auth0 | https://<tenant>.<region>.auth0.com/.well-known/openid-configuration | Set up SSO with Auth0 |
| Google Workspace | https://accounts.google.com/.well-known/openid-configuration | Set up SSO with Google Workspace |
| Keycloak | https://<host>/realms/<realm>/.well-known/openid-configuration | Set up SSO with Keycloak |
| Microsoft Entra ID (Azure AD) | https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration | Set up SSO with Microsoft Entra ID |
| Okta | https://<domain>/.well-known/openid-configuration | Set up SSO with Okta |
| OneLogin | https://<subdomain>.onelogin.com/oidc/2/.well-known/openid-configuration | Set up SSO with OneLogin |
| PingOne | https://auth.pingone.com/<environment_id>/as/.well-known/openid-configuration | Set up SSO with PingOne |
Andere OIDC-Provider¶
Jeder Provider, der OpenID Connect unterstützt, kann integriert werden. Erforderliche Informationen:
- Client-ID
- Client-Secret
- OpenID-Konfigurations-URL (meist unter
/.well-known/openid-configuration) - Unterstützte Scopes (typischerweise
openid profile email)
Kontaktieren Sie support@digna.ai, wenn Sie Hilfe bei der Integration eines bestimmten Providers benötigen.
Best Practices¶
TUN SIE: - Verwenden Sie in der Produktion HTTPS (nicht HTTP) - Speichern Sie Client-Secrets sicher (verwenden Sie wenn möglich Umgebungsvariablen) - Rotieren Sie Secrets periodisch - Testen Sie zunächst in einer Nicht-Produktionsumgebung - Dokumentieren Sie, welche Provider konfiguriert sind - Überwachen Sie Login-Logs auf ungewöhnliche Aktivitäten - Halten Sie die Konfiguration des Identity Providers mit der digna-Konfiguration synchron
TUN SIE NICHT: - Speichern Sie Client-Secrets in der Versionskontrolle - Verwenden Sie HTTP-Redirect-URIs in der Produktion - Konfigurieren Sie mehrere Provider mit demselben Key - Lassen Sie Standard-/Testanmeldeinformationen in der Produktion - Legen Sie Konfigurationsdateien mit Secrets offen - Mischen Sie Entwicklungs- und Produktionsanmeldeinformationen
Support¶
Brauchen Sie Hilfe bei der SSO-Konfiguration?
- E-Mail: support@digna.ai
- Dokumentation: https://docs.digna.ai
- Website: https://www.digna.ai
Zuletzt aktualisiert: 30. August 2026
Release: 2026.04
© 2026 digna GmbH — www.digna.ai