@@ -5,24 +5,35 @@ Mit diesem Plugin kann man ab der Stud.IP-Version 5.0 eine Nextcloud (oder OwnCl
## Installation
1. Das Plugin wird ganz normal in Stud.IP per Drag&Drop installiert.
2. Für OAuth in der Nextcloud hinter einem Apache braucht man das mod_rewrite und mod_env Modul, das die Regel `RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]` umsetzt. Wenn das nicht aktiv ist, kann OAuth nicht funktionieren, weil der Apache alle Authorization-Header entfernt.
3. Es muss in Nextcloud ein Client angelegt werden. Unter Administration -> "Additional" einen neuen Client anlegen. Name ist dabei egal (vielleicht ja Stud.IP).
4. Jetzt hat man einen OAuth2-Client erstellt und kopiert Client-ID und das Secret. Wichtig ist dabei, dass man die korrekte Redirect-URI angibt. Nextcloud überprüft diese URI penibel. Sie sollte in etwa lauten `https://meinstud.ip/plugins.php/NextcloudPlugin/oauth/receive_access_token`. Auch sollte HTTPS aktiv sein.
Jetzt muss man sich überlegen, wie das Nextcloud-Plugin genutzt werden soll in Stud.IP. Gibt es eine zentrale Nextcloud für alle Stud.IP-Nutzer oder kümmern sich die Nutzer selbst um eine eigene Nextcloud?
1. Das Plugin wird wie jedes gewöhnliche Stud.IP-Plugin installiert. Falls das OwnCloudPlugin im Stud.IP bereits
installiert ist, wird dessen Konfiguration bei der Installation übernommen, sowohl die systemweite, als auch die
persönliche. Bereits angebundene Nextcloud-Installationen können somit weiterhin mit Stud.IP genutzt werden,
ohne dass sie neu in Stud.IP eingerichtet werden müssen.
2. Für OAuth in der Nextcloud hinter einem Apache braucht man das mod_rewrite und mod_env Modul, das die Regel
`RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]` umsetzt. Wenn das nicht aktiv ist, kann OAuth
nicht funktionieren, weil der Apache alle Authorization-Header entfernt.
3. Es muss in Nextcloud ein Client angelegt werden: Dazu öffnet man „Verwaltungs-Einstellungen“ -> „Sicherheit“ und
trägt unter „OAuth 2.0-Clients“ einen Client für Stud.IP ein. Im Feld „Weiterleitung“
trägt man die Redirect-URI ein, mit der das NextcloudPlugin das Zugriffstoken von Nextcloud
„meinstud.ip“ muss durch den Basispfad (oft die Domain) des Stud.IP ersetzt werden.
4. Nachdem der OAuth2-Client in Nextcloud erstellt wurde, müssen das
Client-Identifikationsmerkmal und das Geheimnis in Stud.IP eingetragen werden. Dafür
gibt es zwei Möglichkeiten: Zentral (eine Nextcloud für das gesamte Stud.IP) oder
individuell (jede Person bindet eine eigene Nextcloud an).
Zentral:
1. Melde Dich im Stud.IP als Root an und gehe unter Admin -> System -> Konfiguration -> Nextcloud.
2. Trage die oben gewonnene Client-ID beim Parameter`NEXTCLOUD_CLIENT_ID` ein.
3. Trage das oben gewonnene Secret beim Parameter`NEXTCLOUD_CLIENT_SECRET` ein.
2. Trage das oben gewonnene Client-Identifikationsmerkmal in die Einstellung`NEXTCLOUD_CLIENT_ID` ein.
3. Trage das oben gewonnene Geheimnis in die Einstellung`NEXTCLOUD_CLIENT_SECRET` ein.
Individuell:
1.Der Nutzer muss dann alleine die obigen Schritte durchführen bzw. seinen Nextcloud-Admin fragen, ob er das für ihn tun kann und die Credentials übergibt.
2. Im persönlichen Dateibereich von Stud.IP 4.0 gibt es in der Sidebar den Punkt "Nextcloud konfigurieren". Da muss er drauf klicken. Ein Dialog öffnet sich.
3.Man muss die Adresse der Nextcloud eintragen (z.B. `https://meineuni/nextcloud`) und App-ID und Secret von oben eintragen und die Nextcloud aktiv schalten und speichern.
1.Personen müssen alleine die obigen Schritte durchführen bzw. deren Nextcloud-Administration fragen, ob diese das für ihn tun kann und die Zugangsdaten zurücksenden kann.
2. Im persönlichen Dateibereich von Stud.IP 5.0 gibt es in der Seitenleiste den Punkt "Nextcloud konfigurieren". Dieser muss ausgewählt werden, um die Nextcloud zu konfigurieren.
3.Im sich öffnenden Dialog muss die Adresse der Nextcloud eingetragen werden (z.B. `https://meineuni/nextcloud`). Bei App-ID wird das Client-Identifikationsmerkmal eingetragen, bei Secret das Geheimnis. Sobald der Haken bei „Aktiviert“ gesetzt wurde und auf „Speichern“ geklickt wurde, ist die Nextcloud mit Stud.IP verknüpft.
Die nächsten Schritte sind für beide Wege wieder dieselben: