[php] Inloggen met cookies

Pagina: 1
Acties:
  • 107 views sinds 30-01-2008
  • Reageer

  • pdehoop
  • Registratie: September 1999
  • Laatst online: 04-06-2024
Er zijn sites, zoals tweakers.net waarbij je automatisch kunt inloggen dmv cookies.

Kan iemand me kort het principe uitleggen?
De code kan ik dan waarschijnlijk zelf wel verzinnen.

Ik kan namelijk wel allerlei info in cookies gaan stoppen, maar hoe kan ik dan zorgen dat wanneer de bezoeker op de site komt automatisch ingelogd is en de sessie is weggeschreven in de database?

  • KnEuTeR
  • Registratie: Mei 2000
  • Laatst online: 24-02-2024

KnEuTeR

iedereen heeft een handelsmerk

juist daar ben ik op dit moment precies ook mee bezig:

hoe veilig zijn cookies?

Computers ain't that smart, Whatever man built could be taken apart


  • RedHat
  • Registratie: Augustus 2000
  • Laatst online: 18:16
www.php.net
setcookie

PHP:
1
2
3
4
if ( isset ($_COOKE["userid"]) || isset ($_COOKIE["sessie"]) )
{
    $isLogged = 1;
}


uitgaande dat je een sessie (md5 random) in je db hebt en userid, bijna niet te kraken, ja cookie kopiëren, voor de rest niet :)

  • pdehoop
  • Registratie: September 1999
  • Laatst online: 04-06-2024
m'n sessie komt van de browser en bij goed inloggen wordt die sessie in de database weggeschreven.

Op die manier kan maar 1 "venster" ingelogd zijn op de site, toch?
Er wordt namelijk steeds de sessie vergeleken.


Zoals ik van jou begrijp, moet ik dus een cookie maken met daarin de userid en een sessie die steeds hetzelfde is zoals deze ook in de db staat.
Maar dat is dan een ander soort sessie welke ik bedoel.

Als ik jou manier bekijk, kan ik net zo goed van een aantal variabelen achter elkaar een md5 hash maken en die opslaan in een apart veld in de tabel en in het cookie.
Dan bij inloggen kijk je alleen of het cookie bestaat en of dat overeenkomt met de waarde in dat extra veld in de database.

Dat is volgens mij hetzelfde principe.
Maar dat is dus ook met cookie kopieren te omzeilen.

Is er uberhaupt een manier om het cookie kopieren tegen te gaan, is dat de enige manier om automatisch te kunnen inloggen?

  • RedHat
  • Registratie: Augustus 2000
  • Laatst online: 18:16
Elk user krijgt bij inloggen een sessie in cookie+db, alleen een sessie zou niet genoeg zijn (ook al zet je je velden op UNIQUE), je zet er een userid bij, en het is al bijna onmogelijk te hacken (Tot zover cookies niet te hacken zijn, kopiëren kan altijd), een 100% beveiligingssysteem in PHP bestaat IMO niet. Ja, alleen als je elke x dat je je browser afsluit opnieuw moet inloggen OF je die sessies laat leven, maar dan kunnen sysops ook weer kloten.

  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
wat ik op mijn site gedaan heb is dat mensen zelf kunnen aanvinken of ze next time ingelogged zijn. Zo nee, dan is het een cookie die naar browserclose verdwijnd en zo wel dan blijft ie een jaar staan.
Aangezien het een LAN-site is neem ik aan dat het beetje tweakers zijn en toch wel in een jaar formatten ofzo.... Das mijn droom nog steeds....
Pagina: 1