Möchten Sie mit Ihrem Team teilnehmen? Profitieren Sie von unseren Gruppenrabatten! Schreiben Sie an events@dpunkt.de

SSO für Eilige - Migration von einer Legacy-Lösung zu OpenID-Connect

Single Sign-On ist in der DEVK ein alter Hut – so alt, dass das etablierte Verfahren lange vor OpenID Connect eingerichtet wurde. Im Zuge der Zerlegung einer umfangreichen monolithischen Anwendung in cloudbasierte Microservices wurde das Thema SSO akut. Das Team entschied sich für OpenID Connect, wollte aber nicht bis zur Umstellung der globalen SSO-Landschaft warten. Daher beschlossen wir, das Pferd von hinten aufzuzäumen. Die Microservices, die die Rolle von Resource Servern übernehmen, bauen auf OpenID Connect auf, die JWT-Tokens werden ad hoc von der nach und nach zu migrierenden monolithischen Anwendung erzeugt, die über alle notwendigen Informationen (Rechte, Claims, eingeloggte User) verfügt. Sobald ein "ordentlicher" Authorization Server verfügbar ist, schwenken wir auf diesen. Für unsere bis dahin voraussichtlich umfangreiche Microservice-Landschaft sollte sich bis auf die Validierungquelle nichts ändern.

Dieser Erfahrungsbericht beschreibt das Konzept der noch andauernden Migration und setzt einen weiteren Schwerpunkt auf die Frage, wie ein Security-by-Default-Ansatz durch Bereitstellung des entsprechenden Toolings für EntwicklerInnen so einfach wie möglich gemacht wird. Jeder templatebasierte neue Service läuft, wenn nicht explizit eine gegenteilige Entscheidung getroffen wird, erst mal authentisiert und enthält schon Beispiele für autorisierte REST-Endpunkte. Diese müssen dann nur noch für den jeweiligen Einsatzzweck des Services angepasst werden.

Speaker

 

Tarek Ahmed
Tarek Ahmed arbeitet als Softwareentwickler bei der DEVK. Eingestellt als Security-Nervensäge versucht er dafür zu sorgen, dass im von fachlichen Anforderungen und Deadlines geprägten Projektalltag das Thema Security nicht zu kurz kommt. Da er das Herunterbeten von BSI-Grundschutzregeln genauso witzlos findet wie seine KollegInnen, erspart er das sich und ihnen. Stattdessen versucht er, die Integration von Sicherheitsfeatures durch Tools und Libraries möglichst schmerzfrei von unten in den Code zu bekommen.

heise-devSec-Newsletter

Ihr möchtet über die heise devSec
auf dem Laufenden gehalten werden?

 

Anmelden