Der offene Industriestandard steht ab sofort für alle ownCloud User zur Verfügung. OAuth2 sorgt für einen sicheren und erleichterten Anmeldeprozess für ownCloud Clients sowie eine deutliche Erhöhung der Sicherheit bei der Einbindung von ownCloud in Third-Party-Applikationen und Web Services. Durch die Integration müssen künftig keine Passwörter mehr in ownCloud Desktop Clients oder ownCloud Mobile Apps für iOS und Android gespeichert, sondern nur im automatisch gestarteten Web Browser eingegeben werden (authentisiert). Der zugehörige Client erhält anschließend einen einzigartigen Access Token, der in Verbindung mit dem OAuth2-Protokoll den Login ermöglicht (autorisiert). Das Protokoll wird für alle zukünftigen Verbindungen mit dem ownCloud Server eingesetzt. Sowohl die ownCloud Clients, als auch eingesetzte Third-Party-Webapplikationen gelangen dabei aber nie an die tatsächlichen Login-Daten.
Die Nutzung verschiedener Access Tokens pro Client schafft außerdem die Möglichkeit, einzelne Sitzungen selektiv zu beenden. Da der Token für jedes Gerät und jede Anwendung einzeln erstellt wird, können User ihre autorisierten Clients in den persönlichen Einstellungen überprüfen sowie einzelne Tokens löschen, was vor allem beim Verlust eines Geräts hilfreich ist. Damit erhält der User mehr Kontrolle bei gleichzeitiger Erhöhung der Zugriffssicherheit.
Die serverseitige Authentisierung erleichtert die Integration von Identitätsmanagement-Diensten (z.B. SAML/SSO), da Clients nur noch durch den Server autorisiert werden müssen. Die Einbindung weiterer Authentisierungsprotokolle (wie CAS) in ownCloud wird ebenfalls vollständig serverseitig erfolgen. Die Clients werden davon unabhängig über OAuth2 autorisiert.
Die Entwicklung ist das Resultat eines Community-Projektes von Studenten der Universität Münster für die Bildungsplattform Sciebo@Learnweb mit dem Ziel einer ownCloud-Integration in die Lernplattform Moodle. Die Entwicklung wurde im Anschluss in Zusammenarbeit mit ownCloud-Entwicklern für den professionellen Einsatz adaptiert und weiterentwickelt.
OAuth2 ist auf folgenden Plattformen ab sofort oder demnächst verfügbar:
- OAuth2 v0.2 server-side (benötigt mindestens ownCloud Server 10.0.3), erhältlich im ownCloud Marketplace
- ownCloud Android App 2.5.0 mit OAuth2-Support, erhältlich im PlayStore
- ownCloud iOS App 3.7.0 mit OAuth2-Support (geplant Anfang November 2017)
- ownCloud Desktop client 2.4.0 mit OAuth2-Support (geplant Anfang November 2017, Alpha Version bereits verfügbar
Überblick über den sicheren Authentisierungs- und Autorisierungsprozess mit OAuth2 am Beispiel des ownCloud Desktop Clients:
- Der User öffnet den neu installierten Desktop Client und ruft die ownCloud Adresse (URL) auf
- Im Browser öffnet sich die Login Page. Diese kann vom Nutzer mit den üblichen Browser Features auf Authentizität überprüft werden.
- Danach können die Login-Daten eingegeben werden (Authentisierung) sowie die Applikation autorisiert werden
- Der ownCloud-Server übermittelt die individuellen Tokens (Access & Refresh) an den Client
- Der Client ist nun vollständig autorisiert und startklar