Statefull Session Bean für UserLogin

Soahc

Aktives Mitglied
Hallo Zusammen,

ich arbeite für die Uni an einem EJB (3.1) Projekt mit Wicket-Frontend und möchte das Login in das System mit Hilfe einer Statefull Session Bean und später den Zugriff auf das System mit @RolesAllowed-Annotationen realisieren. Dementsprechend muss die Sessionbean den aktellen Nutzer und seine Rolle speichern. Laut einem Buch, mit dem ich arbeite sollte man hierfür eine Login-Buissness-Methode zur verfügung stellen, die entsprechend die übergebenen Parameter (z.B. Loginname, Passwort) prüft. Ist das Passwort und/oder Loin falsch, soll eine System Exception geworfen werden, die die Folge hat, das die BeanInstanz sofort wieder frei gegeben wird.
Leider ist das alles, was da steht und ich kann mir das noch nicht so richtig vorstellen. Kann mir jemand erklären, wie das gemeint ist bzw. etwas Beispielcode posten?

liebe Grüße,

Soahc
 
M

Marcinek

Gast
Das übliche Beispiel für Statefull beans ist ein Einkaufskorb.

==> google.de

Ansonsten würde ich den Login nicht statefull machen.

Ich weiß gerade auch nicht, wie man schön die statefull bean an den user binden kann.

Du musst ja in einer anderen bean dann wissen, dass die Userbean dazu gehört.

Wir machen das so, dass die User sich autentifizieren und dann ein Objekt bekommen. Dieses wird bei jedem Aufruf einer Bean mitgeschickt.
 

FArt

Top Contributor
Hallo Zusammen,

ich arbeite für die Uni an einem EJB (3.1) Projekt mit Wicket-Frontend und möchte das Login in das System mit Hilfe einer Statefull Session Bean und später den Zugriff auf das System mit @RolesAllowed-Annotationen realisieren. Dementsprechend muss die Sessionbean den aktellen Nutzer und seine Rolle speichern. Laut einem Buch, mit dem ich arbeite sollte man hierfür eine Login-Buissness-Methode zur verfügung stellen, die entsprechend die übergebenen Parameter (z.B. Loginname, Passwort) prüft. Ist das Passwort und/oder Loin falsch, soll eine System Exception geworfen werden, die die Folge hat, das die BeanInstanz sofort wieder frei gegeben wird.
Leider ist das alles, was da steht und ich kann mir das noch nicht so richtig vorstellen. Kann mir jemand erklären, wie das gemeint ist bzw. etwas Beispielcode posten?

liebe Grüße,

Soahc

Authentifizierung und Authorisierung klöppelt man nicht selber. So was bieten in der Regel die Container, z.B. mit JAAS....
 

Soahc

Aktives Mitglied
Ich wollte eh mit JAAS arbeiten... also z.B. mit den @RolesAllowed Annotationen, aber irgendwie muss ich doch auf die Rolle des aktuellen Benutzer zugriff haben, oder?
 

FArt

Top Contributor
Dementsprechend muss die Sessionbean den aktellen Nutzer und seine Rolle speichern. Laut einem Buch, mit dem ich arbeite sollte man hierfür eine Login-Buissness-Methode zur verfügung stellen, die entsprechend die übergebenen Parameter (z.B. Loginname, Passwort) prüft.
Was ist das für ein Buch? Hört sich erst mal seltsam an...
Bei JAAS werden die Credentials in einem LoginContext gesetzt und gespeichert. In der Regel wird dieser Context bei jedem Call gesetzt bzw. durchgereicht und steht somit dem Container zur Überprüfung zur Verfügung. Die Überprüfung passiert in den Loginmodulen. Auch im Code kann man Rollenüberprüfungen vornehmen, z.B. in einem EJB über die Methode isUserInRole.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K EJB Session Bean Application Tier 2
M EJB3 Annotations für Session Beans mit einem Parameter ? Application Tier 5
A Stateful Session Bean will nicht "stateful" sein Application Tier 18
O javax.naming.NoInitialContextException - Remote Session Bean Application Tier 2
O Anfängerproblem mit Session Bean Application Tier 3
N Kummunikation Application Client - Session Bean Application Tier 8
J Session-Bean aufräumen bei Timeout bei Seam/EJB Application Tier 6
F Time-out Zeit für Session-Bean Application Tier 4
K Benutzer-Daten über mehrere Session-Beans Application Tier 14
M Entity Bean wird nicht in stateless Session Bean injeziert Application Tier 3
F Lose Kopplung zwischen Session Beans Application Tier 4
S DB-Verbindung beenden beim auflauf der session? Application Tier 7
V EJB: Eine Remote Bean soll eine Local Bean ansprechen und dem Client übergeben Application Tier 2
B Spring context:component-scan: No such bean definition Application Tier 2
M EJB Stateless Bean ist immer null im REST WebService Application Tier 3
T ERROR: Bean name must not be empty! Application Tier 3
P Timer Bean Application Tier 11
B Message-Driven Bean reagiert nicht Application Tier 3
F Property-Datei in Stateless-Bean laden Application Tier 8
V Stateless-Bean soll Info aus Stateful-Bean holen Application Tier 3
byte [Spring] Referenced Bean not found Application Tier 2

Ähnliche Java Themen

Neue Themen


Oben