sql >> Database >  >> RDS >> Mysql

Basisprincipes van een onthoud-mij-systeem

Hier zijn een paar verschillende methoden voor. Een veilige methode zou zijn om een ​​veld toe te voegen aan de mysql-gebruikerstabel en een "remember_me" hash te hebben die slechts een willekeurige hash is die wordt gegenereerd.

De hash moet worden opgeslagen in een cookie op de computer van de gebruiker, evenals het gebruikers-ID voor validatiedoeleinden, hoe lang de herinneringsperiode ook duurt (u moet ook de onthoudperiode in de database instellen als een tijdstempel en voor extra veiligheid). Wanneer ze uw site oproepen, ziet u of die cookie is ingesteld, als dat zo is, authenticeert u de hash gewoon aan de gebruikers-ID. Als het valideert, worden ze als ingelogd beschouwd. Als het niet valideert, stuur ze dan naar een inlogpagina / ze worden niet als ingelogd beschouwd.

Dit is hoe ik de meeste van mijn sites heb ingesteld. Het vervelende is dat als ze inloggen vanaf een andere computer, ze nu niet langer worden gevalideerd op de computer die ze gebruikten en zich opnieuw moeten verifiëren. Maar veiligheid is voor mij belangrijker dan dat ze opnieuw moeten inloggen vanwege die situatie.

EDIT:Zie opmerkingen hieronder voor extra informatie over de sessies / beveiliging.



  1. stuur gegevens naar MySQL met AJAX + jQuery + PHP

  2. Hoe verander je het datatype van een kolom in SQL Server?

  3. Hoe milliseconden tot nu toe te converteren in SQLite

  4. Een back-up maken van een SQL Server-database met T-SQL