Question

Si un utilisateur se connecte sur le site, et dit « se souvenir de moi », nous obtenons l'identifiant unique pour l'utilisateur, chiffrent cela avec RijndaelManaged avec une taille de clé de 256 et placer dans un cookie httponly avec une expiration de jeu de dire. . 120 jours, l'expiration est actualisée chaque demande réussie au serveur.

on génère Eventuellement, le vecteur d'initialisation sur la base de l'agent utilisateur et une partie de l'adresse IPv4 (les deux derniers octets).

Il est évident que theres aucun système d'expiration réel intégré dans, l'utilisateur pourrait techniquement utiliser cette clé chiffrée pour toujours (étant donné que nous ne changeons pas la clé du côté serveur) ..

Je considérais le fait que, pour permettre à cette fonction que je dois permettre à l'utilisateur de pouvoir contourner la connexion et me donner leur identifiant unique (qui est un guid), je me suis dit le guid seul était vraiment difficile de deviner un vrai les utilisateurs guid, mais quitteraient le site ouvert à l'attaque par botnots générant GUIDs (Je ne sais pas comment il est pour eux réaliste de trouver un guid légitime) .. donc c'est pourquoi le chiffrement où le theres serveur connaît la clé de cryptage, et éventuellement le iv est spécifique à la partie de navigateur et ip.

Dois-je être envisager une approche différente où les billets problèmes de serveur associés à un utilisateur, et ces billets aurait une date d'expiration connue pour que le serveur reste dans le contrôle d'expiration? dois-je vraiment à coeur expiration? Se souvenir de moi est de me rappeler après tout?

Dans l'attente d'être humiliés;), Vive.

Était-ce utile?

La solution

question très similaire.

La solution à votre question est dans ce post

  

"Persistent Cookie Meilleur Connexion   Pratique » décrit relativement   approche sécurisée pour la mise en œuvre du   familier "Remember Me" option web   des sites. Dans cet article, je propose une   amélioration qui conserve tous les   les avantages de cette approche, mais aussi   permet de détecter lorsqu'un   cookie persistant de connexion a été   volée et utilisée par un attaquant.

Jacco dit dans les commentaires: dans informations détaillées sur sécurisé lire l'authentification Le Guide définitif site d'authentification .

Autres conseils

Avez-vous envisagé quelque chose comme Open Id? Comme utilise SO.

Quelle est l'importance des informations dont on se souvient? Si ça ne va pas être quelque chose de très personnel ou importante, il suffit de mettre un GUID dans le cookie.

Y compris l'adresse IP dans le calcul est probablement une mauvaise idée, car cela rendrait les utilisateurs à l'aide de réseaux publics instantanément oubliés.

En utilisant la force brute pour trouver GUIDs est ridicule, car il y a 2 128 possibilités.

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