Ik ben bezig met een inlog systeem voor users met php. Ik doe dit met sessies, omdat de mogelijkheden van htaccess niet voldoende zijn, of te ingewikkeld voor de doeleinden (logging enz).
Het script wat ik nu heb geschreven doet het volgende:
1. User komt op een beveiligde pagina, er wordt verwezen naar een functie die controleert of er ingelogd is, deze staat in een class waar alle functies bij elkaar staan voor het login-gebeuren.
2. Functie geeft door dat er niet ingelogd is, user krijgt een inlog scherm voor zn neus.
3. User logt in (password wordt gewoon naar het php bestand gestuurd)
4. Als de login gegevens kloppen met wat in de database staat (password wordt in het php bestand md5 geencrypt, en vergeleken met het md5-encrypt password in de db). Als dit allemaal klopt wordt er een random nummer in de database, en in de sessie gezet.
5. Daarna wordt op iedere pagina deze met elkaar vergeleken.
Dingen die ik misschien nog kan toevoegen:
- md5 encryptie bij de client, zodat het wachtwoord niet gewoon naar php wordt verstuurd.
- controle op ip, dus na een aantal logins achter elkaar geen mogelijkheden meer om in te loggen.
Zijn dit dingen die het extra veilig maken? En zijn er nog dingen die ik vergeten ben?
Het script wat ik nu heb geschreven doet het volgende:
1. User komt op een beveiligde pagina, er wordt verwezen naar een functie die controleert of er ingelogd is, deze staat in een class waar alle functies bij elkaar staan voor het login-gebeuren.
2. Functie geeft door dat er niet ingelogd is, user krijgt een inlog scherm voor zn neus.
3. User logt in (password wordt gewoon naar het php bestand gestuurd)
4. Als de login gegevens kloppen met wat in de database staat (password wordt in het php bestand md5 geencrypt, en vergeleken met het md5-encrypt password in de db). Als dit allemaal klopt wordt er een random nummer in de database, en in de sessie gezet.
5. Daarna wordt op iedere pagina deze met elkaar vergeleken.
Dingen die ik misschien nog kan toevoegen:
- md5 encryptie bij de client, zodat het wachtwoord niet gewoon naar php wordt verstuurd.
- controle op ip, dus na een aantal logins achter elkaar geen mogelijkheden meer om in te loggen.
Zijn dit dingen die het extra veilig maken? En zijn er nog dingen die ik vergeten ben?