これは別の質問の分岐です: Web サイトに「remember me」を実装する最良の方法は何ですか?
一番の答えはこれを実装することです: http://jaspan.com/improved_persistent_login_cookie_best_practice
まとめ:
乱数をシリーズ トークンとして使用し、別の乱数をログイン トークンとして使用します。ログイン状態維持 Cookie にそれらをユーザー名とともに配置します。2 番目の通常のセッション Cookie を割り当てます。ユーザーがセッション Cookie なしで到着するたびに、Stay Logged In Cookie を消費します。今度は新しいランダム ログイン トークンを使用して新しいものを発行し、シリーズ トークンは同じにします。
なぜユーザー名を含めるのですか? それはどのように役立ちますか?シリーズ トークンは、ユーザーとシリーズを識別するのに十分なはずです。シリーズ トークンは、攻撃者がすべてのユーザー名を推測してサイトに一度にアクセスし、全員をログアウトさせる DoS 攻撃を防ぐために、このアプローチに追加されました。しかし、なぜユーザー名をそのままにしておくのが理にかなっているのですか?