cocoon
Erfahrenes Mitglied
Wir entwickeln grad im Rahmen einer Vorlesung eine kleine Anwendung basierend auf EJB3.0, JBoss und Servlets (oder JSP alternativ). Das ganze dient nur der Übung, muss also nicht produktionsreif sein, nichts desto trotz aber ernsthaft.
Bislang habe ich Java-Servlet Anwendungen immer über so geschützt, dass nach erfolgreichem Login eine Session-Property geschrieben wurde, die in jedem Servlet ausgewertet wurde und je nach Wert (logged_in true sowie Benutzer Rolle) Zugang zum Servlet gewährt hat oder auf eine Fehlerseite umgeleitet hat.
Nun existieren laut unseren Vorlesungsunterlagen EJB Annotations wie @PermitAll, @DenyAll, @RolesAllowed(Role), @RunAs(Role) usw. die Zugangsrechte regeln sollen. Handelt es sich dabei um den gleichen Zweck und sollte ich damit lieber diese Annotationen verwenden, oder schmeisse ich was durcheinander?
Ferner die Frage, ob ich explizit in die Session schreiben muss, oder ob es möglich ist, ein EJB "User" über alle Servlets hinwegzuschleppen, indem immer der aktuelle Benutzer gespeichert ist?
Bislang habe ich Java-Servlet Anwendungen immer über so geschützt, dass nach erfolgreichem Login eine Session-Property geschrieben wurde, die in jedem Servlet ausgewertet wurde und je nach Wert (logged_in true sowie Benutzer Rolle) Zugang zum Servlet gewährt hat oder auf eine Fehlerseite umgeleitet hat.
Nun existieren laut unseren Vorlesungsunterlagen EJB Annotations wie @PermitAll, @DenyAll, @RolesAllowed(Role), @RunAs(Role) usw. die Zugangsrechte regeln sollen. Handelt es sich dabei um den gleichen Zweck und sollte ich damit lieber diese Annotationen verwenden, oder schmeisse ich was durcheinander?
Ferner die Frage, ob ich explizit in die Session schreiben muss, oder ob es möglich ist, ein EJB "User" über alle Servlets hinwegzuschleppen, indem immer der aktuelle Benutzer gespeichert ist?