ユーザー2FAが認証を行い、JWTをクライアント側に戻すフロントエンド/バックエンド分離システムを構築しています。
私はangularを使用しており、今のところ、そのトークンを$ window.sessionStorageに格納し、それをすべてのリクエストのヘッダーに含めて、ユーザーを識別/承認/認証します。
クライアント側でこのトークンをより安全なストアはありますか?現在、ログアウト時に主要なクライアント側を削除し、データベースで無効に設定しますが、ユーザーがブラウザーを離れた場合、トークンの有効期限が切れるまで(現時点で6時間有効)保証はありません。
このスレッドまたは他のスレッドについての考えは、すでにそれに答えているので非常にありがたいです。
サーバーにアイドルタイムアウトを実装し、一定の時間(たとえば10分間)アクティビティがない場合は、セッションに期限切れのマークを付けることができます。
[編集済み] JWTはステートレスアプリケーションを認証するためのものであり、セッション用ではありません。たとえば、個々のトークンを無効にする無効化メカニズムを構築する必要があります。これは、セッションベースのアプリケーションを使用している場合に必要な機能です 1 。 JWTを保護するためのベストプラクティスは、OWASP JWTチートシート で説明されています。安全な保管のために、次のことを考慮する必要があります。