Bitte wähle nachfolgend aus, welche Beiträge auf dieser Themenseite auf dem Ausdruck ausgegeben werden sollen. Um dies zu tun markiere bitte die Checkbox auf der linken Seite der Posts, die im Ausdruck berücksichtigt werden sollen und klicke anschließend ganz unten auf der Seite auf den Button "Drucken".

hbci4java in Webapplikation

blue12

Betreff:

hbci4java in Webapplikation

 ·  Gepostet: 08.01.2010 - 12:26 Uhr  ·  #64094
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

Betreff:

Re: hbci4java in Webapplikation

 ·  Gepostet: 08.01.2010 - 12:58 Uhr  ·  #64100
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

Betreff:

Re: hbci4java in Webapplikation

 ·  Gepostet: 08.01.2010 - 15:36 Uhr  ·  #64104
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

Betreff:

Re: hbci4java in Webapplikation

 ·  Gepostet: 08.01.2010 - 15:45 Uhr  ·  #64106
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

Betreff:

Re: hbci4java in Webapplikation

 ·  Gepostet: 08.01.2010 - 16:06 Uhr  ·  #64108
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

Betreff:

Re: hbci4java in Webapplikation

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

Ich denke, das sollte gehen...