Moin,
bevor ich die eigentliche Frage stelle, möchte ich, um Diskussionen vorzubeugen, die Frage "warum machst du das" beantworten mit: "Weils geht".
Mein "Problem": Ich habe aktuell eine ungenutzte, kleine VPS200 Instanz, Nextcloud, Wordpress, DokuWiki auf Netcup-Webspace, ein NAS zu Hause, irgendwo läuft noch HomeAssistant auf nem PI etc. Meine Frau verdreht inzwischen schon die Augen, wenn ich eines der Dinge beim Spielen wieder zerschossen habe, neu aufsetzen muss, oder einfach was unglaublich Geniales und Tolles ausprobieren möchte und dann die Thematik "gib mal hier dein Passwort für den neuen Account ein" kommt. Immer öfter komme ich zu dem Gedanken: Da gibts doch Lösungen für - zentrale Authentifizierung!
Also ist meine momentane Überlegung, mal auszuprobieren, auf dem kleinen VPS "irgendeine" Lösung für zentrales User-Management zum Laufen zu bringen (freue mich jetzt schon, wenn ich meine Frau dann den letzten (versprochen!! ) neuen Account dort einrichten darf). Nun war ich aber bei solch einer zentralisierten Lösung bisher nur normalsterblicher Nutzer (in großen Konzernen). Wenn man sich ein bisschen informiert stolpert man über FreeIPA, Keycloak, LDAP, OpenID, SAML, OAuth - eine Menge Begriffe (verschiedenster Kategorien).
Meine Learnings so weit:
Requirements:
- Single Source of Truth für Benutzer und Gruppen
- LDAP (da mein NAS (Synology) nur über LDAP wirklich fremd-Authentifizierung zulässt)
- (optional, nice to have) User Self Management
Gefährliches Halbwissen: (denkt euch in jedem Satz ein "meines Wissens nach")
- LDAP Authentifikation erfordert die Eingabe von Benutzername+Passwort immer in der jeweiligen App. Viel cooler wär doch so ein Single-Sign-On-Ding, wo ich auf eine Webseite weitergeleitet werden, dort Benutzername und Passwort eingebe, bestätige, dass der Service (z. B. Nextcloud) auf meine Daten zugreifen darf, dann werde ich wieder zurückgeschickt und bin eingelogged. Ich glaube dass das irgendwie mit den Begriffen SAML/OAuth/OpenID zusammenhängt, mir ist aber der Unterschied (trotz Google) noch nicht wirklich klar.
- FreeIPA bringt User/Group-Management mit eingebautem LDAP Server. Sowas wie SAML/OAuth/OpenID aber nicht. Gibt es nicht irgendwas von Ratiopharm, was mir Web-based-Geschichten anbietet und dabei auf LDAP zurückgreift? Klingt auch ein bisschen größer als das, was ich brauche (brauche ich eine Art Active Directory mit Host Registration und DNS? Eigentlich nicht...)
- Keycloak bietet SAML/OAuth/OpenID, aber kein LDAP. Ich könnte aber wahlweise zu/mit FreeIPA oder OpenLDAP synchronisieren, dann hätte ich aber zwei "Points of Truth". Weiß noch nicht ob ich das für eine gute Idee halten soll. Kingt außerdem so, als ob ich mit Kanonen auf Spatzen schieße.
- OpenLDAP + Irgendeine Bridge LDAP<->SAML/Oauth/OpenID, schon wie in Kombination mit FreeIPA beschrieben. Dann wäre es simpel, ich weiß wo die Daten liegen, hätte aber trotzdem irgendwie alle Protokolle abgedeckt.
Hat da jemand Erfahrungen/Software-Empfehlungen/sonstige Ideen? Wäre über ein paar Gedanken zu dem Thema sehr dankbar.
Viele Grüße
Matthias