Nextcloud SSO

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen

Nextcloud kann man mit verschiedenen [[Authentifizierung]s-Backends betreiben. Zum einen gibt es LDAP oder auch SSO, beide sind nicht ohne Schmerzen einzubinden.

LDAP

Hierfür muss das Plugin **LDAP user and group backend** installiert und aktiviert sein, es ist ein offiziell von Nextcloud (auch owncloud) gepflegtes Plugin. In den Einstellungen hat das Plugin einen eigenen Bereich über den es gepflegt werden kann.

Allgemeine Einstellungen LDAP

Teils ist es selbsterklärend, anfänglich wird die Adresse und Port eingegeben, wenn nötig gibt man den User an welcher autorisiert ist die Daten abzufragen. Je nach LDAP sollte hier user + Base DN angegeben werden. Anschließend muss man von seinem LDAP die Base Domain (Base DN) ermitteln/kennen

User LDAP

Anschließend muss der Filter für die User eingestellt werden, hierzu werden die möglichen Objekte aus dem LDAP ausgelesen, ggf kann man noch Gruppen angeben die definieren welche User auf die Cloud zugreifen dürfen.


Die Gruppen lassen sich auch aus dem LDAP automatisch auslesen

SSO/Fusionauth

Über das SSO Plugin welches ebenfalls von Nextcloud gepflegt wird lassen sich SSO Backends anbinden, jedoch nur welche die SAML unterstützen. Beispielhaft wird es hier mit der Fusionauth durchgeführt, welches unteranderem SAML unterstützt.

Zuerst muss das **SSO & SAML-Autorisierung** Plugin installiert werden. Zeitgleich sollte man in Fusionauth eine Anwendung für die Cloud anlegen und konfigurieren. Dies kann nach folgendem Schema erfolgen: Issuer und Audience enthalten hier in beiden Fällen: **https://<domain>//index.php/apps/user_saml/saml/metadata** Für die Callback URL wird **https://<domain>/index.php/apps/user_saml/saml/acs** verwendet

Nextcloud-fusionauth-sso.png

Automatisch erstellt Fusionauth folgende Endpunkte für die Anwendung, diese müssen wir jetzt bei Nextcloud einstellen

Automatisch erstellte Endpunkte

Im SSO & SAML Plugin wird eine neue Konfiguration angelegt, die Bezeichnung ist freiwählbar. Für das uid Attribut wird **email** gewählt (TBD) Aus der zuvor erstellten Konfiguration werden nun die EntityId, Login und Logout URL in die Felder kopiert. Außerdem braucht man noch das Zertifikat der Anwendung (Fusionauth, Settings -> Key Master -> <Anwendung>)


Nextcloud SSO Konfig.png