Vorgehen bei Benutzerlogin?

Status
Nicht offen für weitere Antworten.
J

JSFBeginner

Gast
Hi,
ich versuche mich gerade mit einem Beispielprojekt in JSF/Webprogrammierung einzuarbeiten. Bislang hatte ich immer unkritische Webgeschichten, d.h. ich habe bislang nichts mit registrierten Benutzern gemacht.
Nachdem ich meine Use Cases erstellt habe frage ich mich jetzt, wie man 100% richtig mit einem eingeloggten Benutzer umgeht. Wenn Benutzer A zb auf meiner Webseite eingeloggt ist und mir seine Daten aus einer DB anzeigen lassen möchte, bin ich dann auf der sicheren Seite, wenn ich bei solchen Zugriffen immer auf das von mir angelegte Cookie im Browser von Benutzer A zugreife? Oder bestehen Sicherheitsbedenken, wenn ich die Verifikation des Benutzers A per Cookie abfrage?.( Wobei, wie macht man das sonst?). Wie man sehen kann, habe ich recht wenige Ideen wie man standardmäßig vorgehen könnte. Kennt ihr Links/Tutorials zu diesem Thema oder ist es mit Cookie abfragen getan?

Danke :)
 

SnooP

Top Contributor
Typischerweise stellt man nen Session-Objekt an... Vorgehensweise ist aber ähnlich - du musst ein User-Objekt nach dem erfolgreichen Login erzeugen und in der Session speichern - dann kannst du auf jeder Seite überprüfen ob ein Session-Objekt namens User != null ist - wenn ja, alles roger, wenn nein: umlenken auf die login-page...

ich weiß nicht, wie man das sinnigerweise in JSF macht - bei Struts kann man dafür den RequestProcessor überschreiben, so dass bei jedem Aufruf einer beliebigen Seite diese Abfrage erstmal abgearbeitet wird und danach erst die eigentlich aufgerufene Aktion... - das kann man noch mit ner Erweiterung von ActionMapping verbessern, damit man genau definieren kann welche Seiten ein Login erfordern und welche nicht.

Bei JSF wird es aber sicherlich ähnliche Mechanismen geben - die kenne ich aber nicht ;)
 

me.toString

Bekanntes Mitglied
Aber bitte auch an die User denken, die ihre Cookies deaktiviert haben - die können deine Anwendung nicht benutzen !!!
 

Sanix

Top Contributor
Auch bei einer Session brauchts ein Cookie...

Falls du JBoss verwendest, kannst du das ganze über Filter machen und dann so, wie Snoop es beschrieben hat.
 

ProfSamba

Mitglied
Sanix hat gesagt.:
Auch bei einer Session brauchts ein Cookie...

nicht zwingend. Beim SJSAS 9 wird automatisch umgeschaltet, dass du deine Session ID über den request mitsendest, wenn dein Browser keine Cookies erlaubt. Wie das andere Server machen kann ich aber leider auch nicht sagen.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben