A person uses a fingerprint scanner for secure entry in a business setting.

Die Einführung eines zentralen Standards für Authentifizierung und Autorisierung führte zu einer effizienteren Entwicklung, nahtlosen Benutzererlebnissen und besserer Skalierbarkeit durch zentralisierte Bibliotheken für moderne Sicherheitsstandards.

Kunde: Große deutsche Landesbankbank

Ausgangssituation

Die Authentifizierungs- und Autorisierungslandschaft der Bank war stark fragmentiert: Neben Basic Auth und eigenentwickelten
API-Key-Lösungen gab es uneinheitliche OAuth2-Umsetzungen, die die Integration von Web-Anwendungen erschwerten und hohe Entwicklungsaufwände verursachten.

Aufgrund der fehlenden Standardisierung war keine effiziente Skalierung neuer Projekte möglich, und eine nahtlose UI-Integration mehrerer Anwendungen in einem zentralen Portal blieb aus (siehe Modulare Portallösung).

Lösung

Konzeption eines bankweiten Standards für Authentifizierung und Autorisierung, der moderne Sicherheitsstandards erfüllt
und Skalierungseffekte in der Entwicklung und der Integration von Web-Anwendungen ermöglicht.

Schaffung von bankweiten Backend- und Frontend Bibliotheken für diesen Standard: Um den Aufwand und die Komplexität aus
den Implementierungen der Projekte herausziehen und auszulagern in zentral betreute Artefakte.

Herausforderungen

Einfache Nutzung: Durch bereitgestellte Bibliotheken, Beispiele und Vorlagen wird Entwicklerteams die Implementierung von
Authentifizierung erheblich erleichtert, ohne dass tiefgehendes Spezialwissen oder umfangreiche Fachkenntnisse erforderlich sind.

Nahtlose Benutzererfahrung: Einzelne Anwendungen können miteinander integriert dargestellt werden, ohne dass Benutzer mehrfach zur
Anmeldung aufgefordert werden.

Übersichtlichkeit und Skalierbarkeit: Jede Anwendung definiert und verwaltet ihr eigenes, unabhängiges Berechtigungskonzept.
Ausgestellte Tokens enthalten anwendungsspezifische Rollen, wodurch die Übersichtlichkeit und Skalierbarkeit der Zugriffsrechte
gewährleistet wird.

Akzeptanz: Die Einführung eines zentralisierten Standards kann auf Widerstände in den Entwicklerteams
stoßen, da diese auf neue Tools und Prozesse umsteigen müssen oder bestehende Eigenentwicklungen aufgeben könnten.

Unser Beitrag

  • Analyse der bestehenden Authentifizierungsmechanismen von bankinternen Anwendungen
  • Bildung einer Taskforce mit Experten des Kunden und des Auth-Providers zur gemeinsamen Lösungskonzeption
  • Einholung und Anpassung von Best Practices des Auth-Providers an die spezifischen Anforderungen des Kunden
  • Identifizieren der Anwendungszenarien des Kunden und Ableiten der zu verwendenden AuthFlows
  • Erstellung von Vorgaben und Dokumentationen,
    inkl. Praxisbeispiele und Anwendungsvorlagen für Auth-Flows und Rollenkonzepte
  • Prototyping von Anwendungsszenarien mit den definierten Auth-Flows und Validierung mit Entwicklerteams
  • Iterative Entwicklung von Backend- und Frontend-Bibliotheken (Typescript, React, Java Spring) für eine einfache und
    einheitliche Nutzung der neuen Auth-Methoden und Validierung mit Entwicklerteams
  • Sicherstellung der Qualität und Funktionalität durch automatisierte Tests
  • Gestaltung der Bibliotheken so, dass ein späterer Wechsel des Auth-Providers ohne Änderungen an den Anwendungen
    möglich ist
  • Inbetriebnahme der neuen Auth-Mechanismen und Begleitung der ersten Anwendungen bei der Verwendung der Bibliotheken
  • Betreuung der Post-Go-Live-Phase: Bugfixing, neue Features, Support und Enabling für bestehende und neue Anwendungen
  • Stakeholder-Kommunikation und regelmäßige Statusberichte an Management und Entwicklerteams
  • Etablierung eines Inner-Source-Prozesses zur langfristigen Unterstützung und Weiterentwicklung
  • Aufbau eines internen Betriebsteams und Übergabe der Verantwortung