Efter at have kigget lidt mere på det, har jeg fundet ud af at den gemmer de oplysninger som login siden submitter til login servletten. og derved logger den ind igen.
Den attribut du har sat, skal du manuelt fjerne igen med remove attribute, på sessionen. Dette garanterer at personen ikke kan komme ind på siderne igen. Smart er det også hvis du bruger en controller for så skal han igennem denne her controller ved hvert skift til en ny side, og du sikrer dig at indlogget personer ikke bare kan hoppe til andre sider med en direkte URL.
Kommandoen ser således ud : request.getSession().removeAttribute("din attribut");
Jeg gør det du siger Daniel, jeg fjerner bare alle attributter på session stakken, istedet for bare en specifik. Men problemet er at browseren kan huske hva der er blevet submittet med fra logon vinduet. så når jeg går tilbage, kan den ikke visen siderne før jeg er kommet tilbage til logon siden, hvis jeg her trykke refresh, spørger den om den skal forsøge at lave en siden med de gamle oplysninger, siger jeg ja til det, logger den ind igen!
Jeg checker på et object. dvs når folk logger ind og deres brugernavn og password er godkendt, opretter jeg et object som ligges på session. så kontrollere jeg om dette object er oprettet i alle servlets og på alle jsp siderne.
Det virker fint på alle siderne pånær når jeg går tilbage til login siden, og siger refresh!
Hvordan har du indstillet din broswer ? Det nytter jo ikke at lave alle de tigerspring, hvis du har indstillet browseren til at huske feltkoder som password og loginnavn. Måske har jeg ikke helt ret, men det begynder,at lugte af du har et specielt program eller en fancy indstilling på din browser, der giver problemet. Som Disky siger, de ting du har gjort burde være rigeligt.
Hvis du submitter med en servlet på loginsiden, kan du 100% sikre dig at folk skal igennem din servlet hvergang. Du kunne f.ex placere to objecter på sessionsstacken, hvor den ene indeholder oplysninger den bruger, der netop er pålogget, og den anden som en sikkerhed for brugeren har været omkring din controller. Det object du så bruger som sikkerhed, skal du blot fjerne hvergang han kommer op på en ny side ( Dette gør jeg med et taglib ), og selvfølgelig tilføje igen nå han kommer ned forbi controlleren, som checker om han må se siden ved at kigge på han bruger object.
Det virker for mig, jeg sender dig gerne noget kildekode, hvis du vil have det ?
tror du ikke problemet er at browseren husker brugernavn og password, så når man opdater siden, så logger den på som om man lige har indtastet sine oplysninger
Har faktisk oplevet at ting bliver cachet selvom man skriver no cache. Prøv ihvertfald lige at checke det. Men problemet er helt sikkert browserens fordi hvis du fjerne sessions attributterne KAN MAN ikke bruge dem mere. Jeg ved man kan slår alt auto halløj fra i IE under options et eller andet sted. Prøv lige at sikre dig at den ikke er sat til at huske passwords og formfelter.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.