私はemberを使用して、ユーザーがログインする必要があるサイトのWeb UIを作成しています。ユーザーの最後のログインからのCookieがブラウザに保存されているとします。今度はユーザーがサイトに再度アクセスします。それで、最後の訪問時のクッキーに基づいてユーザーを自動的にログインさせるのは安全で一般的な方法ですか?もしそうなら、これを実装する一般的な方法は何ですか? (私はGoogleから何も見つかりません)さらに、ログイン時にクッキーを作成するにはどうすればよいですか?ユーザーID、パスワードハッシュ、有効期限をクッキーに入れるのは一般的な方法ですか?返信するユーザーをemberで処理するのは安全な方法ですか?
さらに、このテーマに関連する参考文献は非常に高く評価されています。
編集1
Vohumanの回答を踏まえて、私は私の質問はもう少し具体的にすることができると思います。基本的に、私が知りたいのは、ブラウザを閉じて再度開いても、ユーザをログインさせ続けるための一般的で安全な実装です。すなわち、ライフタイムはセッションスコープを超えています。例えば、リンケージを取る。ログインしてブラウザを終了した場合。次に、あなたがリンクされたサイトに再度アクセスするとき、あなたはまだ自動的にログインします。今、私が描写できるのは、以下のような解決策です。
初めてサイトにログインすると、サーバーは認証ハッシュトークンを含むCookieを返します。次にサイトを再訪すると、サーバーはハッシュトークンを受け取り、セッションを認証します。
したがって、基本的には、ユーザーがログインしたままにしておくのが基本です。その場合、JSON Webトークン(JWT)は基本的に上記のハッシュトークンを構築する1つの方法ですか?さらに、接続がHTTPSであると仮定すると、このアプローチは安全です。そうじゃない?
編集2
This articleは、アクセストークンを保存するに関する興味深い議論を与えます。
お返事ありがとうございます。私はあなたの答えに基づいて私の質問を更新しました。しかし、あなたの答えは完全にはわかりません。特に、現在のセッションを超えてユーザーをログインさせ続けるとします。それでは、sessionStorageはうまくいかないでしょうね。 localStorageについては、それは安全ですか?悪意のあるサイトで採掘できますか? – JBT
JWTトークンをクッキーまたはWebストレージに格納することに関するこの興味深い記事が見つかりました。実際にはWebストレージ上にCookieを推奨しています。https://stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5 -web-storage – JBT