IPluginAuthenticatorType
Schnittstelle IPluginAuthenticatorType
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)
- 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.