hbci4java in Webapplikation

 
blue12
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 3
Dabei seit: 01 / 2010
Betreff:

hbci4java in Webapplikation

 · 
Gepostet: 08.01.2010 - 12:26 Uhr  ·  #1
Wie kann ich mit hbci4java in einer Webapplikation gleichzeitig verschiedene Konten verschiedener Anwender über Pin/Tan verwalten? Im Moment ist es so geplant, dasss jeder Anwender für seine Zugangsdaten ein eigenes File (client.passport.PinTan.filename) bekommt. Im Sourcecode habe ich gesehen, dass die Properties pro Threadpool verwaltet werden. Kann das beim Zugriff auf die Property client.passport.PinTan.filename nicht dazu führen, dass ein Anwender das Pin/Tan File eines anderen Anwenders im Zugriff bekommt? Oder mache ich da einen anderen Gedankenfehler.
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: hbci4java in Webapplikation

 · 
Gepostet: 08.01.2010 - 12:58 Uhr  ·  #2
Zu den technischen Details siehe README.MultiThreading und README.MultiThreading.AppServer.

Wenn Du so etwas machst, solltest Du aber auch rechtliche Dinge im Kopf behalten (Anwender vertrauen einer dritten Partei - nämlich Deiner Web-Applikation - ihre PINs/TANs an. Laut AGB der meisten Banken dürfen sie das nicht und haften in dem Fall selbst für entstehende Schäden).
blue12
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 3
Dabei seit: 01 / 2010
Betreff:

Re: hbci4java in Webapplikation

 · 
Gepostet: 08.01.2010 - 15:36 Uhr  ·  #3
Das heißt ich muss die Anfragen immer in einem Thread laufen lassen, der seine eigene ThreadGroup besitzt. Etwa in der Form:

ThreadGroup threadGroup = new ThreadGroup("getAccountInfo");
GetAccountInfo getAccountInfo = new GetAccountInfo(threadGroup, "getAccountInfo");
getAccountInfo.setPassPortPinTanFileName(customName);
getAccountInfo.start();

Wobei die Klasse GetAccountInfo von der Klasse Thread abstammt und die Abfrage der Kontobewegungen steuert.

Zu der rechlichen Grundlage – nach meinem Verständnis werden in der Datei client.passport.PinTan.filename doch nur die Parameter für die Verbindung gespeichert. Die PIN und die TAN muss dann für jede Transaktion extra eingeben werden. Damit befinden wir uns doch im Rahmen der AGBs der Banken. Oder mache ich dabei einen Gedankenfehler?
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: hbci4java in Webapplikation

 · 
Gepostet: 08.01.2010 - 15:45 Uhr  ·  #4
Zitat
Das heißt ich muss die Anfragen immer in einem Thread laufen lassen, der seine eigene ThreadGroup besitzt. Etwa in der Form:
...

Im Prinzip ja. Nach dem start() Deines HBCI-Threads musst Du darauf warten, dass der Thread fertig wird, um die Ergebnisse abzuholen. Solange Du keine TAN-pflichtigen Aufträge ausführst, geht das so ziemlich gut. Bei TAN-pflichtigen Aufträgen in Verbindung mit den Zweischritt-Verfahren wird es hässlicher :-)

Zitat
Zu der rechlichen Grundlage: – nach meinem Verständnis werden in der Datei client.passport.PinTan.filename doch nur die Parameter für die Verbindung gespeichert. Die PIN und die TAN muss dann für jede Transaktion extra eingeben werden.

Das schon. Aber was passiert denn mit der eingegeben PIN und TAN? Der Anwender gibt sie ja auf DEINER Webseite ein, und DEINE Web-Applikation empfängt sie und führt damit praktisch "im Namen des Anwenders" HBCI-Aktionen aus. Niemand könnte Dich hindern, diese Daten (es geht praktisch hauptsächlich um die PIN) innerhalb Deiner Web-Applikation irgendwo wegzuspeichern, so dass Du jederzeit Zugriff auf die Kontoumsätze sämtlicher Deiner Kunden hast...

-stefan-
blue12
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 3
Dabei seit: 01 / 2010
Betreff:

Re: hbci4java in Webapplikation

 · 
Gepostet: 08.01.2010 - 16:06 Uhr  ·  #5
Alternativ könnte ich doch auch im Konstruktor HBCIPassportPinTan den Filenamen aus dem Callback holen. Dann müsste ich mir über das Problem mit dem Thread doch keine Gedanken mehr machen – oder?

Danke für den Typ mit dem Datenschutz – da sind wir auch sehr hinterher. Angefangen vom Server im eigenen abschließbaren Schrank bis zu einem externen Datenschutzbeauftragten, der unsere Prozesse überwacht.

- georg -
kleiner77
Benutzer
Avatar
Geschlecht:
Beiträge: 779
Dabei seit: 08 / 2004
Betreff:

Re: hbci4java in Webapplikation

 · 
Gepostet: 11.01.2010 - 09:20 Uhr  ·  #6
Zitat
Alternativ könnte ich doch auch im Konstruktor HBCIPassportPinTan den Filenamen aus dem Callback holen.

Ich denke, das sollte gehen...
Gewählte Zitate für Mehrfachzitierung:   0