私の Web アプリでは、次の方法で認証を処理します。
ユーザーは自分のメールアドレスとパスワードを入力します
データベースでユーザーを検索し、bcrypt で暗号化されたパスワードと一致しますか?
その場合、新しいセッション レコードがデータベースに保存されます。これは、ユーザー ID と 128 ビットのランダム キーです。また、このキーは「安全な」「http のみ」の Cookie としてクライアントに保存されます。
ユーザーが Web アプリにリクエストを行うたびに、キーはデータベース内のセッションを検索するための参照になります。セッションがある場合 -> 認証済み。
セッションは一定時間 (例: 3 時間) 後に削除されます。
注: すべてのリクエストは SSL 暗号化されています。
この認証手順に欠陥はありますか? これを使用する場合、どのような危険が考えられますか?
ありがとう!
エリアス