私は、プロジェクト (expressjs) でセッションを管理するために Cookie を使用しない方法で作業しており、すべてのセッション データをサーバー側で保持し、クライアント側で (以前はサーバーによって生成された) トークンを使用して、すべての要求でセッションを検証しています。
ユーザーのログイン時に新しいトークンが作成され、ページのどこかに隠され、リクエストごとにこのトークンがリクエスト ヘッダーに書き込まれ、サーバー側で検証されます。この時点で、サーバーはセッション ストアでトークンを検索し、たとえば redis を使用して、トークンが見つかった場合はセッション データを取得するか、それ以外の場合はセッションが期限切れになったことを示すメッセージで応答します。
このために私が考えていることがいくつかあります:
- Redis キーは、有効期限が設定されたユーザー ログイン時に作成されます。
- セッション データが redis で見つかるたびに、有効期限が延期されるようにキーを「タッチ」する必要があります。
- トークンはクライアントの IP アドレスとともに検証されるため、他の人が使用することはできません。
私の質問は、これが を使用するための安全な方法と見なすことができるかどうか、そしてここに欠けているものがあるかどうかです。ありがとう