| |
|
|
Die Architektur für den Banking Kernel HBCI Java Multiuser ähnelt der
Architektur des Banking
Kernel HBCI Java. Die wesentlichen Unterschiede liegen in den Paketen
Security und HBCI-System-Management-Agent.
Der Banking Kernel Java Multiuser bietet sich speziell für den Einsatz in
einem Brokersystem an. Anforderungen an eine parallele Dialogführung bei
mandantenabhängiger Journalisierung von HBCI-Auftrags- und Antwortnachrichten
sind hierbei berücksichtigt.
Die folgende Abbildung zeigt den Gesamtaufbau der
Java-Implementierungsvariante des Banking Kernel Java Multiuser. Die Pakete und
Schnittstellen des Banking Kernel Java Multiuser sind in Form gelber Kästen bzw.
schwarzer Balken hervorgehoben.
|
| |
 |
| |
|
| |
Es folgt eine Beschreibung der einzelnen Komponenten:
|
| |
-
Aufgabe des Pakets HBCI-System-Management-Agent ist die Administration
des Banking Kernel HBCI Java Multiuser. Der HBCI-System-Management-Agent
koordiniert die Abläufe zum Öffnen und Schließen des Kernels, die eine
Initialisierung und Deinitialisierung der Kernel-Pakete Trace, Repository
und Dialogsteuerung veranlassen. Weiterhin verarbeitet der
HBCI-System-Management-Agent Ereignismeldungen der übrigen Kernelpakete und
reicht diese gegebenenfalls weiter.
|
| |
-
Aufgabe des Pakets Dialogsteuerung ist die Steuerung der
Geschäftsabläufe. Die Dialogsteuerung nimmt XML-Auftragsdokumente entgegen,
führt die beauftragten Aktionen durch, generiert XML-Antwortdokumente und
übergibt diese der Applikation. Die Dialogsteuerung koordiniert die Pakete
Format, Security und Transport bei der Abwicklung von
HBCI-Geschäftsvorfällen und parst bzw. generiert Fremdformatnachrichten
(SWIFT, DTAUS und DTAZV), die transparent in HBCI-Nachrichten übertragen
werden. Weiterhin verwaltet die Dialogsteuerung Userparameterdaten und
Bankparameterdaten.
|
| |
-
Aufgabe des Pakets Security ist die Bereitstellung der HBCI-spezifischen
kryptographischen Operationen und die Anbindung des Sicherheitsmediums. Das
Paket Security stellt die in den HBCI-Versionen 2.1 und 2.2 vorgesehenen
kryptographischen Operationen mit Hilfe eines Kryptographie-Providers zur
Verfügung. Je nachdem, welcher Kryptographie-Provider eingesetzt wird
(IBM4758 oder eracom), ist eine entsprechende Implementierung des Pakets
Security erforderlich. Weiterhin bietet das Paket Security Methoden zum
lesenden und schreibenden Zugriff auf Felder des unterstützten
Sicherheitsmediums. Für den Einsatz ohne Kryprographie kann eine
Leer-Implementierung des Pakets Security (Dummyprovider) angebunden werden.
Das Paket Security hat keinerlei Kenntnisse des HBCI-Formats.
Elektronische Unterschriften und verschlüsselte Daten in das HBCI-Format
umzusetzen, ist Aufgabe des Pakets Format.
|
| |
-
Das Paket Format kapselt Methoden zum Parsen und Generieren des
HBCI-Formats.
Das Paket Format hat weder Kenntnisse darüber, wie die Anbindung an das
zentrale HBCI-System bzw. den HBCI-Konverter erfolgt (dies ist
Aufgabenbereich des Pakets Transport), noch darüber, mit welchen Verfahren
signiert bzw. verschlüsselt wird (dies ist Aufgabenbereich des Pakets
Security).
|
| |
|
| |
-
Der Banking Kernel Java Multiuser erlaubt es allen anderen Paketen sowie
der Applikation, mandantenabhängige Journalsätze im XML-Format zu schreiben.
Aufgabe des Pakets Journal ist es, die Journalsätze, die an das Paket
geliefert werden, zu sammeln und für Revisionszwecke persistent zu
speichern.
Die universelle Schnittstelle des Pakets Journal ermöglicht es den
Kunden, auf einfache Weise Implementierungen des Pakets Journal
bereitzustellen, welche die jeweiligen hauseigenen Journalanwendungen
anbinden.
Bestandteil des Banking Kernel Java Multiuser ist eine
Referenzimplementierung des Pakets Journal. Die Referenzimplementierung
speichert die übergebenen Journalsätze in einer einfachen Datei und
ermöglicht so eine Journalanalyse während der Entwicklung und für
Testzwecke.
|
| |
|
| |
-
Aufgabe des Pakets Repository ist es, den einzelnen Paketen des Banking
Kernel HBCI Java Multiuser die permanente Speicherung von Informationen
beliebiger Art zu ermöglichen. Die einzelnen Informationen werden unter
einem Schlüssel (einer URL) abgelegt und können jederzeit abgefragt oder
geändert werden. Bei Bedarf können sich die Pakete des Banking Kernel HBCI
Java Multiuser über die Änderung einzelner Informationen im Repository
informieren lassen.
|