Donc, je sais que cela a été fait à la mort, mais toutes les réponses que j'ai rencontré ont été très confus/se contredire les uns les autres ou de leurs explications ont été incomplètes et j'essaie de la garder et de faire ce que mon auto à l'aide de toutes les ressources disponibles, mais je pense que je l'ai perdu quelque part. Je tiens à préciser une fois pour toutes. Je vous remercie pour votre patience à l'avance que ce sera peut-être un peu longue haleine.
J'ai une petite boîte de connexion en haut de ma page qui restera constante si l'utilisateur n'est pas connecté. Si ils sont connectés, alors, au lieu d'une boîte de connexion, ils vont voir un message d'accueil avec leur nom.
Session De Vérification
Alors tout d'abord, voici un schéma de l' (à ma connaissance à ce jour) comment vérifier l'utilisateur peut accéder 'membres' contenu. (ce code va en haut de la page pour vérifier et définir les variables telles que l' $loggedin = true;
)
Comme il est, mon $_SESSION['loggedin']
est juste le nom des utilisateurs. C'est ma compréhension que les sessions peuvent être falsifiées ou détournés à partir du même domaine, et je sais que c'est très dangereux (par exemple, un attaquant pourrait en quelque sorte de faire une séance contenant un autre nom d'utilisateurs et voilà - un accès instantané à des utilisateurs de trucs) Mais je ne sais pas comment je devrais vérifier la session. La seule façon que je peux imaginer pour ce faire est de se connecter à la base de données chaque fois qu'une page est chargée et vérifier un hachage MD5 ou quelque chose à partir de la base de données (Et de le renouveler) mais j'imagine que ce serait de générer un grand nombre de inutile de trafic sur le serveur et je suis presque sûr qu'il y a une meilleure manière de le faire.
L'exploitation forestière dans
Voici un schéma de ce qui se passe lorsqu'un utilisateur se connecte (Et l'affichage du message d'accueil ou la boîte de connexion.)
Pour la plupart, je suis assez solide sur cette partie (j'espère), mais je ne sais pas ce que mon hachage MD5 doit contenir afin de pouvoir plus tard re-vérifier le hash avec celui de la base de données, l'un dans le cookie et un nouvellement généré de hachage pour vous assurer un cookie n'a pas été évoqué par un attaquant.. en outre, comme indiqué dans les commentaires ci-dessous, Je vais probablement à la ferraille de l'utilisation de l'adresse IP dans la table de hachage pour permettre aux utilisateurs de rester connectés à partir de plusieurs endroits (par exemple, son téléphone et son ordinateur portable.)
Donc mes questions sont:
- comment dois-je vérifier mes séances ne sont pas de faux?
- comment dois-je vérifier mes cookies ne sont pas de faux?
- mon journal dans la méthode être assez sûr, après la vérification est en place?
- est-il quelque chose d'important, j'ai laissé de côté?
Si il ya quelque chose que vous aimeriez poser, s'il vous plaît laissez-moi savoir dans un commentaire et je serai heureux de le modifier à ma question avec autant d'informations que je peux donner.