Content

Scroll back

Clients für MOA-ID

Im Rahmen dieses Projekts wurden Client Bibliotheken, in den Programmiersprachen Java und .net erstellt. Diese Client Bibliotheken implementieren die Authentifizierungsprotokolle PVP 2.1 und OpenID Connect und stellen ein abstrahiertes Interface für Service Provider zur Verfügung. Um einen möglich generischen Einsatz zu ermöglichen und um die Weiterentwicklung der Bibliotheken zu vereinfachen wurde die Implementierung in zwei Teilbereiche aufgeteilt. Die nachstehende Abbildung zeigt den Aufbau dieser Teilkomponenten.

Architektur der MOA-ID Clients Implementierung

  • Authentication Manager: Die Authentication Manger Bibliothek bildet die Schnittstelle zur Online Applikation und stellt hierfür ein einheitliches Interface zur Verfügung. Dieses Modul implementiert authentifizierungsprotokollunabhängige Funktionen welche bei allen Authentifizierungsprotokollen zur Verfügung stehen. Hierbei handelt es sich um folgende Funktionen:
    • Generisches Interface zur Bereitstellung von Authentifizierungsdaten an die Online Applikation
    • Sessionmanagement für die authentifizierte Session inkl. Single LogOut Funktionalität
    • Unterschiedliche Implementierungen für den Sessionstore sind möglich (in Memory, Datenbankbasiert, …)
    • Konnektoren zur Verwendung von unterschiedlichen Endpunktimplementierungen.
  • Endpunktimplementierungen: Diese Module implementieren die authentifizierungsprotokollspezifische Funktionalität und bilden in Kombination mit dem Authentication Manger den vollständigen MOA-ID Client. Die Konfiguration der jeweiligen Endpunkte erfolgt über eine property Datei. Aktuell stehen folgende Endpunktimplementierungen zur Verfügung.
    • PVP 2.1: Dieser Endpunkt implementiert die Funktionalität laut PVP 2.1 S-Profil Spezifikation. Hierfür sind folgende Funktionen umgesetzt:
      • PVP Metadaten Generierung für den Client
      • PVP AuthnRequest Generierung inkl. Signaturerstellung und Requestsessionverwaltung.
      • PVP Assertion Validierung und Bereitstellung von Auth. Informationen in Abstrakter Form
      • PVP Single LogOut Funktionalität (SP-Initiated und IDP Initiated)
    • OpenID Connect:  Dieser Endpunkt implementiert das Authentifizierungsprotokoll OpenID Connect. Die Konfiguration der jeweiligen Endpunkte erfolgt über eine property Datei. Aktuell stehen folgende Endpunktimplementierungen zur Verfügung.
      • AuthCode Request Generierung und Validierung der Response
      • AccessToken Request Generierung und Validierung der Auth. Informationen.
Um die Integration der Bibliothek in eine bestehende Online Applikation zu vereinfachen wurde zusätzlich eine Demo Applikation erstellt welche den Authenication Manager und die beiden Endpunktimplementierungen verwendet.

Weitere Informationen

Scroll forward