Hallo,
ich würde gern alle JSF Seiten unter /user/ nur berechtigten Personen zukommen lassen. Nun kann ich das schön mit den Realms unter Tomcat 6 lösen. Die Datenbank wäre auch schon dafür vorbereitet. Also ich hätte einen JDBC Realm und alle Seiten unter /user/* wären nur per login Seite erreichbar.
Nun habe ich 3 Probleme mit dieser Geschichte:
1. Wenn ich eine Seite unter /user/* aufrufe komme ich automatisch auf die login Seite. Aber ich möchte auf der Startseite (/index.faces) dieses Login Formular anbieten. Aber wenn ich mich da anmelde (ohne eine Seite unter /user/ aufgerufen zu haben), habe ich keine Möglichkeit gefunden um auf /user/index.faces umzuleiten.
2. Ich benötige den Usernamen in meinen Beans, um userabhängige Daten in der Datenbank abzulegen. Wie komme ich an den angemeldeten Usernamen?
3. Ich möchte bei Registrierung eines Users sein Passwort "versalzen" und als MD5 Hash ablegen. Nun kann ich problemlos diesen User mit dem versalzenen Password anlegen, aber wie mache ich es dem Realm klar, dass er zu dem eingegebenen Passwort das Salz anhängen muss um sauber zu authentisieren?
Ich habe nun auch eine Idee, wie ich es lösen könnte. Nämlich ohne Realm. Ich mache die Überprüfung der Usernamen und Password in einer Bean und leite auf /user/index.faces bzw /error.faces per navigation rule weiter. Dann wäre das Problem mit dem Salz und dem Usernamen in der Bean gelöst. Nur wie mache ich dem Tomcat klar, dass dieser User nun die Seiten unter /user/ sehen darf?
Vielleicht hat ja jemand auch eine ganz andere Idee.
ich würde gern alle JSF Seiten unter /user/ nur berechtigten Personen zukommen lassen. Nun kann ich das schön mit den Realms unter Tomcat 6 lösen. Die Datenbank wäre auch schon dafür vorbereitet. Also ich hätte einen JDBC Realm und alle Seiten unter /user/* wären nur per login Seite erreichbar.
Nun habe ich 3 Probleme mit dieser Geschichte:
1. Wenn ich eine Seite unter /user/* aufrufe komme ich automatisch auf die login Seite. Aber ich möchte auf der Startseite (/index.faces) dieses Login Formular anbieten. Aber wenn ich mich da anmelde (ohne eine Seite unter /user/ aufgerufen zu haben), habe ich keine Möglichkeit gefunden um auf /user/index.faces umzuleiten.
2. Ich benötige den Usernamen in meinen Beans, um userabhängige Daten in der Datenbank abzulegen. Wie komme ich an den angemeldeten Usernamen?
3. Ich möchte bei Registrierung eines Users sein Passwort "versalzen" und als MD5 Hash ablegen. Nun kann ich problemlos diesen User mit dem versalzenen Password anlegen, aber wie mache ich es dem Realm klar, dass er zu dem eingegebenen Passwort das Salz anhängen muss um sauber zu authentisieren?
Ich habe nun auch eine Idee, wie ich es lösen könnte. Nämlich ohne Realm. Ich mache die Überprüfung der Usernamen und Password in einer Bean und leite auf /user/index.faces bzw /error.faces per navigation rule weiter. Dann wäre das Problem mit dem Salz und dem Usernamen in der Bean gelöst. Nur wie mache ich dem Tomcat klar, dass dieser User nun die Seiten unter /user/ sehen darf?
Vielleicht hat ja jemand auch eine ganz andere Idee.