D
Ok, jetzt hab ich noch ein andere Problem, welches mir jetzt erst klar geworden ist.
Und zwar wird das Applet so eingebunden:
<applet codebase="http://domain.de/" code="applet/Beeper.class" archive="mysql-connector-java-5.1.7-bin.jar,Beeper.jar" width="300" height="120">
<param name="userid" value="1">
</applet>
Das Problem ist nun, jeder kann den Code kopieren, lokal speichern, die userid ändern und hat dann quasi die Informationen für diesen User.
Das ist ziemlich scheiße. Aber sicher bin ich nicht der erste mit dem Problem. Gibts da gängige Sicherheitsabfragen? Spontan fällt mir ein, eine Session ID und die Userid miteinander zu verknüpfen und wenn die nicht zusammen passen, dann ist es ncht der Nutzer hinter der Id. Also sowas dann:
<applet codebase="http://domain.de/" code="applet/Beeper.class" archive="mysql-connector-java-5.1.7-bin.jar,Beeper.jar" width="300" height="120">
<param name="userid" value="1">
<param name="ticket" value="398df53sf7546">
</applet>
Jetzt bringt es nichts mehr sich das Applet zu laden und die Userid zu ändern. Hat jemand andere Ideen?
edit:
Mir ist noch eine Möglichkeit eingefallen. Ich könnte die userid mit einem Salt Wert verbinden und diesen Wert dann verschlüsseln und als Parameter userid eintragen. Damit spar ich mir das zusätzliche Verwalten von SessionIDs zu jedem Benutzer.
Ich weiß nur noch nicht mit welcher Verschlüsselung ich das am besten mache. Klar ist jedenfalls, dass ich dafür keine Einwegverschlüsselung brauchen kann, denn aus dem Hashwert muss ich die userid problemlos auslesen können, ohne zusätzliche Vergleichstabelle, sonst bin ich wieder beim selben Prinzip wie mit SessionIDs.