Bonnes pratiques en matière de cookie "remember me" ?

WRInaute impliqué
Bonjour à tous,

"Se souvenir de moi" est une fonctionnalité courante pour éviter de se reloguer trop souvent sur un site. Il y a quelques inconvénients : usurpation plus facile si quelqu'un accès au poste de l'utilisateur (mais finalement guère plus qu'avec un mot de passe pré-enregistré), risque d'oubli du mot de passe, etc. mais également des avantages : un mot de passe robuste est mieux admis par l'utilisateur, voir une A2F qui serait également moins onéreuse, possibilité de demander une confirmation pour des tâches sensibles, etc.

Je m'interroge sur les bonnes pratiques en matière d'implémentation. J'ai trouvé cette proposition sur stackoverflow, qui repose sur un article de 2006, l'utilisation du token pour détecter un potentiel vol du cookie me semble très intéressante. Je ferais quelques modifications : (1) ne pas utiliser l'id de l'utilisateur, mais un identifiant généré aléatoirement, (2) hacher et saler en base de donnée ou bien le numéro de série ou bien le token (pour éviter qu'une fuite de la BDD permette de "fabriquer" un cookie d'identification), (3) utiliser des fonctions de comparaison immunes à une attaque temporelle.

Les articles sont toutefois un peu anciens. Auriez-vous d'autres recommandations en terme de bonne pratique ?
 
WRInaute passionné
Je me contente à peu près de ce dont parle la proposition, et je ne suis pas responsable si quelqu'un a installé des trojans et arrive se fait voler des cookies, il y a quand même des limites à la sécurité, sécurité qui est déjà aujourd'hui largement assurée par les antivirus et les pièces jointes de mails douteux qui ne se lancent pas aussi facilement, l'amélioration des navigateurs, le https, etc.
Les sites qui ont des raisons de se la jouer parano à ce point, c'est par exemple les sites des banques, et dans ce cas-là c'est très simple, elle ne proposent pas la fonction "Se souvenir de moi" (ou juste pour l'identifiant, mais pas pour la connexion auto).
 
Discussions similaires
Haut