HTTP 応答の WWW-Authenticate ヘッダーに応答して、Firefox がモーダルをポップアップすることに気付きました。その後、Firefox は、Firefox が閉じられるまでユーザー名とパスワードを保存します。Web Developerプラグインを使用すると、開発者向けのユーザーがログアウトできるようになります。しかし、これらのキャッシュされた資格情報を失うには、どの HTTP メッセージをブラウザーに送信する必要があるでしょうか?
質問する
515 次
3 に答える
3
残念ながら、ユーザーのナビゲーションの開始時に (http 401 応答を介して) 回収した資格情報の保持 (およびサーバーへの各 http 要求の送信) を停止する命令をブラウザーに適切に送信する方法はありません。
于 2009-11-11T19:41:50.753 に答える
2
合理的な回避策を見つけました。少し複雑ですが、非常にうまく機能します。GUID フィールドを持つテーブルを作成しました。それは記録から始まったのではありません。解決策は次のとおりです。
- ユーザーは「ログアウト」をクリックします。
- ログアウト スクリプトは、新しいテーブルに GUID を追加します。
- ログアウト スクリプトは、パラメーターとして GUID を持つ URL にユーザーをリダイレクトします。
- ユーザーがパラメーターとして GUID を使用して URL をヒットすると、システムは GUID のテーブルを検索します。
- GUID が表にある場合は、GUID を含むレコードを削除し、無効なユーザー名/パスワードの応答コードを指定します (資格情報に問題がない場合でも)。
- GUID が表にない場合は、資格情報を検証します。
この新しいテーブルは、ハッカーによってすぐに肥大化する可能性があるため、各ユーザーがテーブルに 1 つのエントリしか持てないようにしてください。タイムスタンプを使用して、バッチ ジョブを使用してテーブルを頻繁にプルーニングすることもできます。
于 2009-12-30T16:17:49.297 に答える