0

https://stackoverflow.com/a/6337021/999516に示すように Bcrypt を使用してパスワードをデータベースに保存しています。ユーザーが Cookie を使用してログに記録し続けるために「remember me」機能を追加しようとしています。

ユーザーが正常にログインしたら、ハッシュを再作成し、DB で更新します。ユーザーが記憶オプションをチェックした場合、USER_ID、有効期限を使用して Cookie を作成しますが、理解できません: Cookie にどの値を保存する必要がありますか? 完全な char(60) ハッシュ?

4

1 に答える 1

2

別の「記憶」ハッシュを実装して Cookie に保存し、対応する DB テーブルでそのハッシュを特定のユーザー ID と有効期限に関連付けることをお勧めします。実際のユーザー ID を Cookie に保存することは、本当に悪い考えです。なぜなら、Cookie に保存されているユーザー ID を変更しただけではないことを確認する方法がないからです。Cookie に完全に別個のハッシュを保存することで、DB テーブルでそのハッシュが属するユーザーを簡単に検索し、有効で変更されていない場合は自動ログインすることができます。

于 2012-07-10T22:28:05.947 に答える