LeaveFlow: Anmeldung und Integrationen
Anmeldeverfahren und Integrationen in LeaveFlow: Google Workspace, Microsoft Entra ID, LDAP, Slack, Microsoft Teams und Zwei-Faktor-Pflicht.
LeaveFlow: Anmeldung und Integrationen
Alle Einstellungen dieser Seite findest du unter Admin → Organisation → Firmen-Einstellungen (/admin/company/settings). Mehrere Anmeldeverfahren können gleichzeitig aktiv sein.
Anmeldeverfahren im Überblick
| Verfahren | Voraussetzung | 2FA in LeaveFlow |
|---|---|---|
| Lokal (E-Mail und Passwort) | immer verfügbar | optional oder per Firmen-Pflicht, TOTP |
| Google Workspace | GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, Schalter in den Firmen-Einstellungen |
entfällt, Google übernimmt die Anmeldung |
| Microsoft Entra ID | ENTRA_CLIENT_ID, ENTRA_CLIENT_SECRET, Schalter in den Firmen-Einstellungen |
entfällt, Microsoft übernimmt die Anmeldung |
| LDAP / Active Directory | Verbindung in den Firmen-Einstellungen, APP_LDAP_ENCRYPTION_KEY |
bleibt bestehen |
Das lokale Konto des Admins funktioniert auch bei aktivem LDAP weiter: Benutzer mit lokaler Anmeldung fängt der LDAP-Login nicht ab.
Bei Google, Entra und LDAP legt LeaveFlow beim ersten erfolgreichen Login automatisch ein Benutzerkonto mit der Rolle Mitarbeiter an (bei LDAP je nach Gruppe). Dieses Konto hat noch keinen Mitarbeiterdatensatz: Verknüpfe es unter Mitarbeiter über das Feld „Verknüpfter Benutzer“, sonst kann die Person keinen Urlaub beantragen. Existiert die E-Mail-Adresse bereits als anderes Konto, wird der Login abgelehnt.
Google Workspace
- Im Google-Cloud-Projekt eine OAuth-2.0-Client-ID vom Typ Webanwendung anlegen.
- Als autorisierte Weiterleitungs-URI
https://<deine-domain>/connect/google/checkeintragen. GOOGLE_CLIENT_IDundGOOGLE_CLIENT_SECRETin.env.localsetzen.- In den Firmen-Einstellungen im Block „Google Workspace Login“ auf Google-Login aktivieren klicken.
- Optional im Feld „Erlaubte Google-Workspace-Domain (optional)“ die Domain eintragen (zum Beispiel
acme.com) und mit Domain-Einschränkung speichern sichern.
Auf der Anmeldeseite erscheint danach „Mit Google anmelden“. Die Google-E-Mail-Adresse muss von Google als verifiziert gemeldet sein. Ohne Domain-Einschränkung kann sich jedes verifizierte Google-Konto anmelden und erhält ein Mitarbeiter-Konto.
Microsoft Entra ID
- Im Azure-Portal eine App registrieren.
- Als Weiterleitungs-URI
https://<deine-domain>/connect/entra/checkeintragen. ENTRA_CLIENT_IDundENTRA_CLIENT_SECRETin.env.localsetzen, bei einer Einzelmandanten-Registrierung außerdemENTRA_TENANT_ID(Standardcommon).- In den Firmen-Einstellungen im Block „Microsoft Entra ID Login“ auf Microsoft-Login aktivieren klicken.
- Das Feld „Tenant-ID (optional)“ ausfüllen und mit Tenant-ID speichern sichern.
Ohne Tenant-ID in den Firmen-Einstellungen können sich auch Nutzer mit persönlichen Microsoft-Konten anmelden und möglicherweise E-Mail-Adressen von Firmenmitarbeitenden beanspruchen. Trage deshalb immer die Tenant-ID deines Verzeichnisses ein.
Auf der Anmeldeseite erscheint „Mit Microsoft anmelden“.
LDAP / Active Directory
Im Block „LDAP / Active Directory Login“ der Firmen-Einstellungen trägst du ein:
| Feld | Bedeutung |
|---|---|
| LDAP-Host, Port | Adresse des Verzeichnisdienstes |
| Verschlüsselung | Keine (Klartext), STARTTLS oder LDAPS (Port 636) |
| Bind-DN (Service-Account) | Konto für die Suche; leer lassen für anonymen Bind |
| Bind-Passwort | Wird verschlüsselt gespeichert; leer lassen, um das vorhandene Passwort zu behalten |
| Basis-DN (User-Suche) | Suchbasis für Benutzer |
| Benutzer-Filter | Muss genau einmal {username} enthalten, zum Beispiel (uid={username}) oder für Active Directory (sAMAccountName={username}) |
| Manager-Gruppe (DN), Admin-Gruppe (DN) | Mitglieder erhalten die Rolle Manager beziehungsweise Administrator |
Das Bind-Passwort ist keine Umgebungsvariable: Du trägst es im Formular ein, LeaveFlow speichert es verschlüsselt mit APP_LDAP_ENCRYPTION_KEY. Aktiviert wird mit LDAP-Login aktivieren.
Die Anmeldung läuft mit Benutzername und Passwort auf der normalen Anmeldeseite. Das Verzeichnis muss für jeden Benutzer ein Attribut mail liefern. Die Rolle aus der Gruppenmitgliedschaft wird nur beim ersten Login vergeben und danach nicht mehr mit dem Verzeichnis abgeglichen.
Verwendest du STARTTLS oder LDAPS, schützt das die Verbindung zum Verzeichnis. Mit „Keine (Klartext)“ laufen Benutzername und Passwort unverschlüsselt über das Netz.
Slack
Im Block „Slack-Integration“ trägst du ein:
| Feld | Quelle in Slack |
|---|---|
Bot-Token (xoxb-…) |
„OAuth & Permissions“ der Slack-App |
| Signing Secret | „Basic Information“ der Slack-App |
Standard-Kanal-ID (C…) |
Kanal-ID, nicht der Name |
Token und Secret werden verschlüsselt gespeichert und mit Slack-Integration aktivieren eingeschaltet. In der Slack-App richtest du diese Adressen ein:
| Zweck | URL |
|---|---|
Slash-Commands (/urlaub, /team-abwesend) |
https://<deine-domain>/webhook/slack/commands |
| Interaktive Komponenten | https://<deine-domain>/webhook/slack/interactive |
Anfragen werden über die Slack-Signatur geprüft und müssen höchstens fünf Minuten alt sein.
| Funktion | Verhalten |
|---|---|
| Neuer Antrag | LeaveFlow postet ihn in den Standard-Kanal, mit Schaltflächen zum Genehmigen und Ablehnen |
| Entscheidung | Wird im Kanal gepostet; der Antragsteller erhält zusätzlich eine Direktnachricht |
/urlaub oder /urlaub request |
Öffnet ein Formular für einen Urlaubsantrag (ganze Tage) |
/team-abwesend |
Listet die heute Abwesenden (bis zu 25) |
| Ablehnen per Schaltfläche | Trägt den festen Grund „Abgelehnt über Slack“ ein |
Slash-Commands, Direktnachrichten und Schaltflächen erkennen den Benutzer über die Slack-Benutzer-ID, die am LeaveFlow-Benutzer gespeichert sein muss (Feld
slackUserId). Die Oberfläche bietet dafür kein Eingabefeld. Ohne diese Zuordnung antwortet LeaveFlow „Dein Slack-Account ist nicht mit LeaveFlow verknüpft.“
Microsoft Teams
Im Block „Microsoft Teams Integration“ trägst du eine eingehende Webhook-URL ein, die mit https:// beginnen muss, und aktivierst mit Teams-Integration aktivieren. LeaveFlow sendet dann eine Karte bei jedem neuen Antrag und bei jeder Genehmigung oder Ablehnung.
Zwei-Faktor-Authentifizierung
Jeder Benutzer kann unter /profile/2fa TOTP einrichten (QR-Code oder Schlüssel, danach 10 Backup-Codes). Im Block „Zwei-Faktor-Authentifizierung verpflichtend machen“ aktivierst du mit 2FA-Pflicht aktivieren und einem Stichtag in der Zukunft die Pflicht. Bis zum Stichtag erscheint ein Hinweis-Banner, danach leitet LeaveFlow jeden Benutzer ohne eingerichtetes 2FA bei jeder Seite auf die Einrichtung um. Das gilt unabhängig vom Anmeldeverfahren, auch für Google- und Entra-Benutzer; deren Login verlangt allerdings keinen TOTP-Code. Hat jemand sein Gerät verloren, setzt du 2FA unter Benutzer mit „2FA zurücksetzen“ zurück.
Die Anmeldung ist auf 5 Versuche je 15 Minuten begrenzt. „Angemeldet bleiben“ hält die Sitzung 7 Tage.