Je veux mon site pour avoir une case à cocher que les utilisateurs peuvent cliquer afin qu’ils n’auront pas à vous connecter chaque fois qu’ils visitent mon site. Quelle est la meilleure façon de mettre en œuvre cette ? Je sais que j’aurai besoin de stocker un cookie sur son ordinateur, mais ce qui devrait être dedans ? Est-ce là tout ce que j’ai besoin de faire attention à garder ce cookie de présenter une faille de sécurité ?
Réponses
Trop de publicités?L'Amélioration Persistante Cookie De Connexion De Meilleure Pratique
Vous pouvez utiliser cette stratégie décrite ici comme une meilleure pratique:
- Lorsque l'utilisateur se connecte avec succès dans avec se Souvenir de Moi cochée, un cookie de connexion est émis en plus de la norme de session, gestion des cookies.
- Le cookie de connexion contient de l'utilisateur nom d'utilisateur, un identificateur de série, et un jeton. La série et de marque sont impossible à deviner des nombres aléatoires à partir d'une assez grande de l'espace. Tous les trois sont stockés dans une table de base de données.
- Lorsqu'un utilisateur visite le site et présente un cookie de connexion, le nom d'utilisateur, de la série, et un jeton sont recherchés dans la base de données.
- Si le triplet est présent, l'utilisateur est considéré comme authentifié. L'utilisées pion est retiré de la base de données. Un nouveau jeton est généré, stockées dans la base de données avec le nom d'utilisateur et le même identificateur de série, et un nouveau cookie de connexion contenant tous les trois est présenté à l'utilisateur.
- Si le nom d'utilisateur et de série sont présents, mais le jeton ne correspondent pas, un vol est supposé. L'utilisateur reçoit un très ferme avertissement et tous de l'utilisateur de rappeler les séances sont supprimés.
- Si le nom d'utilisateur et les séries ne sont pas présents, le cookie de connexion est ignoré.
Conserver leur nom d’utilisateur et un RememberMeToken. Quand ils vous connecter avec se souvenir de moi coché générer une nouvelle RememberMeToken (qui annule toutes les autres machines qui sont marqués sont de se souvenir de moi).
Quand ils reviennent recherchez-les par la remember me de jeton et assurez-vous que les matches de UserId.
J’ai stockerait un ID utilisateur et un jeton. Lorsque l’utilisateur revient sur le site de comparer ces deux éléments d’information contre quelque chose de persistants comme une entrée de DB.
En ce qui concerne la sécurité, juste ne rien mettre là-dedans qui permettra à une personne de modifier le cookie pour obtenir des avantages supplémentaires. Par exemple, n’enregistrez pas les groupes auront leur utilisateur ou leur mot de passe. Tout ce qui peut être modifié qui porteraient atteinte à votre sécurité ne doit pas être stocké dans le cookie.