IPluginAuthenticatorType


Schnittstelle IPluginAuthenticatorType

Ein Beispiel für ein registriertes Authenticator-Plugin. Die Konfigurationsoberfläche bietet standardmäßig Eingabemöglichkeiten zum Hinterlegen von Attributen und Dateien, welche zur Laufzeit durch die Authenticator-Logik genutzt werden können.

Diese Schnittstelle ermöglich das Anbinden einer eigenen Formular-Anmeldung. Über diese Schnittstelle kann ein benutzerdefinierter Identity-Provider oder eine komplett eigene Authentifizierungslogik für Formulare in Xima® Formcycle eingebunden werden. Das Plugin lässt sich dabei, je nach dem Bereich, in dem es installiert wurde, unter dem Menüpunkt System > Externe Benutzer (System-Scope) oder Benutzeranmeldung > Externe Benutzer (Mandant-Scope) aktivieren und konfigurieren.
Um ein konfiguriertes Authenticator-Plugin dann in einem Formular verfügbar zu machen, muss dies über den Formular-Zugriff am jeweiligen Formular konfiguriert sein. 

Standardmäßig bietet die Konfigurations-Oberfläche bereits Möglichkeiten eigene Eigenschaften, in Form von Key-Value-Parametern, sowie Dateien (z.B.: eigene Zertifikate) zu hinterlegen. Diese Eigenschaften sind über die Programmierschnittstelle verfügbar und können zum Ausführungszeitpunkt des Authenticators herangezogen werden.

Eine beispielhafte Anbindung für diesen Plugin-Typ kann über einen Maven-Archetype aus der XIMA-Artifactory heruntergeladen werden (Name der Archtypes: plugin-archetype-authenticator-type). Der dafür notwendige Archetype-Katalog ist unter https://artifactory.xima-services.de/artifactory/libs-release-local/archetype-catalog.xml erreichbar.

Anwendungsfälle für die Nutzung dieses Plugin-Typs

  • Einbindung eines Identity-Providers, der sich nicht über die bereits vorhandenen (lizenzierungspflichtigen) Authenticator-Typen für OpenID Connect, OAuth 2 oder SAML 2.0 konfigurieren lässt
  • Erweiterung der vorhandenen Authenticator-Typen (OpenID Connect, OAuth 2 oder SAML 2.0) um Eigenschaften, die über den Standard nicht abgedeckt sind oder eine Zuordnung von der Rückgabewerten in das erzeugte Nutzer-Profil bzw. nachgeordneten Funktionsaufrufen, welche über die vorhandene Implementierung hinaus gehen
  • Implementierung einer vollständig eigene Formularanmeldung, unabhängig von vorhandenen Authenticatoren unter Nutzung des pac4j Authentifizierungs-Frameworks

Methodensignaturen

public IPluginFormAuthenticatorRetVal buildFormAuthClient(IPluginFormAuthenticatorParams params)

Diese Methode wird ausgeführt, wenn der Plugin-Authenticator an einem Formular aufgerufen wird, um eine Authentifizierung durchzuführen.

Parameter
Diese Methode nimmt folgende Parameter entgegen
params
Ein Objekt mit den Zugriff auf die konfigurierten Eigenschaften am Authenticator (getAuthenticator), sowie auf Hilfsobjekte (getFormAuthContext) zu Arbeit mit der Authenticator-Schnittstelle.
Rückgabewert
Ein Client welcher zum Authentifizieren von Benutzern zuständig ist. Die angeforderte geschützte URL wird dabei zwischengespeichert und der Benutzer wird zur Anmeldung an den Identity-Provider weitergeleitet. Nach erfolgreicher Authentifizierung erfolgt eine Rückleitung zur Anwendung und schließlich zur ursprünglich angeforderten URL.