Hallo zusammen,
ich habe die Aufgabe von unserem Kunden, FirstSpirit mit 2fa zu sichern. Ich konnte in der Community gar nichts zu 2fa finden, daher die Frage: hat jemand damit schon Erfahrungen machen können?
Wir wollen weiterhin die FS-User authentifizieren, nur eben zusätzlich mit einem zweiten Faktor neben dem vergebenen Passwort.
Ich sehe hier 3 (existierende) Möglichkeiten:
- RequestHeaderLoginModule
- FirstSpirit SAML Login Modul
- Einen eigenen Security Filter
RequestHeaderLoginModule
Hier wird ein Reverse Proxy verwendet, welcher die Authentifizierung durchführt. Entwicklungstechnisch wäre das für uns die leichteste Lösung, allerdings haben wir ohnehin schon einen ReverseProxy und deswegen würde es unsere Netztopologie deutlich komplexer machen.
Fragen:
- Sagen wir der Reverse Proxy authentifiziert einen User und liefert dessen Username als HTTP-Request header. Wird dieser User dann auch in FirstSpirit angelegt (falls er noch nicht existiert)? Falls nicht, wie könnte man sonst die Rechte des Users verwalten?
FirstSpirit SAML Login Modul
Ein Single-Sign-On (SSO) brauchen wir eigentlich nicht. Wie gesagt wollen wir die FS-User mit zusätzlichem Faktor authentifizieren.
Fragen:
- Wenn ich das richtig verstehe, müssten wir hier als eigener Identity Provider (IDP) auftreten. Gibt es hierzu vielleicht schon Erfahrungen?
Einen eigenen Security Filter
Diesen könnten wir z.B. mit Spring im ContentCreator implementieren. Natürlich hätten wir damit nur den CC zusätzlich abgesichert. ServerManager, SiteArchitect etc währen nicht durch 2fa geschützt.
OAuth2?
Wäre es denkbar, dass e-spirit auch ein OAuth2-Login-Modul entwickelt? Wir haben nämlich schon solch einen OAuth2-Server mit dem wir sehr schnell den User authentifizieren könnten.
Und die letzte Frage: egal welche Methode letztendlich verwenden, müssen wir für jeden Benutzer ein Secret erzeugen und dieses speichern. Gibt es eine Möglichkeit das "im FS-User" zu speichern?
Vielen Dank und beste Grüße
Alex Fuckert