3

ユーザーログインシステムを作成しました。

パスワードを忘れた場合のページ。ユーザーへのphpメールを使用しています。ユーザーはリンク付きのメールを受け取ります

リンク-

....?email=abc@gmail.com&confirm_code=uefu8878ef...

ユーザーはこのリンクをクリックして、reset_password ページにアクセスできます。

ただし、これは GET を使用しているため、誰でもブラウザの履歴を確認してこのページにアクセスし、パスワードをリセットできます。

なにか提案を?

4

3 に答える 3

0

確認コードをデータベースに保存し、それと電子メール アドレスの間のリンクを作成し、時間を指定して、時間の経過後に期限切れになるようにします。このページが要求されるたびに、この電子メールに関連する Confirmation_code とデータベース内の時間で使用時間をチェックし、有効期限が切れていない場合は、承認済みとしてマークし、リクエストを処理します。そうでない場合は、記録をすべて削除します

次に、より安全にするための有効期限について、有効期限を1時間に設定すると理にかなっていると思います。これが役立つことを願っています:)

于 2013-04-02T14:48:48.657 に答える