11. marts 2025 - 13:25Der er
9 kommentarer og 1 løsning
Se om det er en ny bruger, der ikke er logget ind
Jeg er ved at lave en hjemmeside, der består af flere sider. Via index.php kan man vælge at se noget og kommer derefter til en side med login: logind.php. Er logind korrekt, sendes man videre til en tredje side: vis.php, der viser det ønskede. Problem: Man kan komme direkte ind på vis.php uden at logge ind, da logind fra en anden bruger er gemt i nogle session-data. Hvordan løser jeg det?
Jeg har tænkt på om det kan løses ved at se på fra hvilken maskine der forsøges at komme ind på vis.php. Men kan man det?
En anden mulighed kunne være at lade det hele foregå på index.php, men det bliver nok noget snørklet at få til at virke!
Ja, og det tester jeg også på. Men det viser sig, at man kun kommer ind på vis.php, hvis man benytter en pc, der før er blevet logget ind. Så der er nok ikke noget problem i virkeligheden.
Men derfor kan det da godt være interessant, om man kan detektere hvorfra en forespørgsel kommer.
Hvis der er noget sikkerhedsmæssigt involveret, skal du nok stadig sikre dig, at filen ikke eksekverer, hvis brugeren manuelt taster stien til vis.php ind i browseren.
En måde kan være at starte filen med en test af om sessionsvariablen er sat: if(isset($_SESSION)){ [din nuværende kode indenfor disse to tuborg-parenteser] }
Jeg mener, at jeg i forbindelse med noget program til optælling af gæster på en hjemmeside blev fortalt, at man på serveren kunne se fra hvem der kom anmodning til ens hjemmeside. Altså at serveren fra dem, der gik ind på ens hjemmeside fik en eller anden kode, som identificerede gæsten! Men måske er det er erindringsforskydning!
Server kan se den eksterne IP adresse af client, hvilket ikke er det samme som at se bruger (der kan være mange tusinder af brugere bag samme eksterne IP adressse).
Server can sætte en session cookie med et session id som client kan vælge at sende i alle efterfølgende requests (alle browsere gør dette for at understøtte login uden URL rewriting) hvilket giver serveren mulighed for at identificere hvilke requests som hører til en session, men ikke mulighed for at sammenkoble forskellige sessioner.
Server kan sætte en persistent cookie med et id som client kan vælge at sende i alle efterfølgende requests - dette afhænger af browserens privacy settings og brugerens accept af standard EU advarsel etc.etc. - hvilket giver mulighed for at identificere en PC og browser (hvilket ofte vil være en bruger) - ihvertfald indtil brugeren sletter cookies.
Det er nok det, som jeg har misforstået. Tak for info!
Synes godt om
Ny brugerNybegynder
Din løsning...
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.