Question

Quelle serait la meilleure façon de garder une trace du nombre de fois que l'utilisateur a tenté de se connecter? IE Données de session, base de données, fichier temporaire ou autre?

Était-ce utile?

La solution

La base de données serait la meilleure. La session ne fonctionnerait pas, car la session est spécifique au navigateur; Si l'attaquant nettoyait ses cookies entre chaque tentative, votre système ne compterait jamais plus d'une défaillance. Un fichier temporaire pourrait fonctionner si vous ne voulez vraiment pas utiliser de base de données, mais ce genre de chose est vraiment à quoi servent les bases de données.

Autres conseils

Je conseillerais ce qui suit:

  1. Pour le suivi immédiat, j'opterais pour l'utilisation d'une variable de session. Il s'agit d'un compromis équitable par opposition à l'utilisation de fichiers et de bases de données. Mais c'est bon pour le suivi à court terme. Autrement dit, jusqu'à ce que l'utilisateur quitte le navigateur ou jusqu'à ce que la session passe à l'extérieur.

  2. Pour garder en permanence les enregistrements des tentatives de journal, il est toujours préférable d'opter pour l'approche de la base de données. J'ai généralement une table séparée qui suit des choses comme l'IP, l'utilisateur, la date et l'heure, et ajouter un captcha pour renforcer le tout.

Je crois que l'utilisation de la table de base de données est plus efficace et plus facile à implémenter que l'utilisation d'un fichier externe. En effet, vous devez stocker le fichier dans un emplacement sûr et définir les autorisations pour empêcher les bots et autres programmes de les lire. C'est un travail supplémentaire.

Cela dépend de la durée de la maintenance à conserver ces informations. S'il n'est utile que pendant une période limitée, conservez-les dans les données de session. Si vous avez besoin de le stocker pour plus de temps, utilisez des fichiers (ou une base de données). Mais n'oubliez pas que l'on n'est pas un utilisateur jusqu'à ce qu'il exécute correctement la connexion, vous devez donc enregistrer une adresse IP au moins afin d'identifier ces tentatives de connexion.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top