Entwicklung einer Single Sign-on Lösung mit adaptiver Mehrfaktor-Authentifizierung für verteilte Cloudanwendungen

Stephan Tuschefski

Kurzfassung

Diese Arbeit beschäftigt sich im ersten Teil mit der Erweiterung einer bestehenden Authentifizierungslösung um die Fähigkeit als externer Identityprovider bei anderen Identitäts- und Zugriffsmanagement-Servern aufzutreten. Anlass hierfür war die Fähigkeit der bestehenden Authentifizierungslösung die von Kunden benötigte Rechte- und Rollenverwaltung genauer umsetzen zu können, als bestehende Standardsoftware dies kann. Als Grundlage für dieses Vorgehen dient die OpenID Connect Spezifikation, welche als Authentifizierungsschicht verwendet wird. Der zweite Teil dieser Arbeit beschäftigt sich mit der Erweiterung der neuen Authentifizierungslösung um die Fähigkeit zusätzlich eine Zwei-Faktor-Authentifizierung von
Nutzern durchzuführen. Dazu wurde eine Möglichkeit geschaffen REST-Endpunkte einer Java EE Anwendung mit Hilfe einer Annotation abzusichern, welche
flexibel vom Entwickler zur Absicherung verschiedener Endpunkte eingesetzt werden kann.

Schlagwörter: Authentifizierung, Single Sign-on, SSO, OpenID Connect, Zwei-Faktor-Authentifizierung, 2FA, MFA, Java EE

Abstract

This thesis addresses in its first part the extension of an existing authentication solution with the ability to act as an external identity provider for other identity and access management servers. This was due to the existing authentication solutions' ability to handle the rights- and role management needs of current customers better than existing standard software. The basis for this extension is the OpenID Connect specification which is used as an authentication layer. The second part of this thesis covers the extension of the new authentication solution with the additional ability to two-factor-authenticate users.For this an annotation was developed, that can flexibly secure any REST endpoint of a Java EE application which a developer desires.

Keywords: Authentification, Single Sign-on, SSO, OpenID Connect, Two-factor authentication, 2FA, MFA, Java EE

x