2011-01-07 3 views
0

これは多分使いやすさの問題ですが、これは投票するのに良い聴衆のようです。ブラウザを閉じてもセッションは常に終了する必要がありますか?

Q:ブラウザが閉じられても、ユーザーセッションはいつも有効期限切れになりますか?なぜ、または、どうしてですか?

「依存している」場合は、ブラウザの終了時に期限切れにならないようにしてください。

+0

これは一般的な質問ですか、またはこのサイトまたは他のサイトについてですか? – Nick

+0

これはもっと一般的な質問です。私はオンラインWebストアを開発しています。私はユーザー認証システムの一部をコーディングしていたので、私の頭の中に疑問が浮かんできました。 – justinl

答えて

2

はい、開かれたセッションで他の人があなたのシステムに侵入できるようにする必要があります。しかし、ブラウザが閉じているかどうかをどのように検出したいのですか? Ajaxを使っても、これは本当に信頼できません。

したがって、アプリケーションの種類(銀行ソフトウェア10分、ブラウザゲーム20分など)に応じて適切なタイムアウトを定義します。

+0

私の場合、私はCodeigniterを使用しています。ブラウザのセッションを終了するための設定をしています。私は本当にそれがどのように動作するのか分からない。 X秒ごとにセッションを「更新」する設定があります。秒数を落とすと、ブラウザーが閉じられ、X秒後にセッションが満了することがわかります – justinl

2

セッションはブラウザを閉じると常に有効期限が切れます。そうすれば、ユーザがブラウザを閉じる前にログアウトに失敗しても、セッションはまだ開いていてハック可能ではありません。それは "利便性"問題ではなく、セキュリティ問題です。

+0

セッション内のすべてのブラウザウィンドウが閉じたとき、実際のトリックが正しく検出されています。 http://blogs.msdn.com/b/ieinternals/archive/2010/04/05/understanding-browser-session-lifetime.aspx – EricLaw

+1

私はその悪いセキュリティポリシーをブラウザに依存してセッションをブラウザとして期限切れにすると思います終了することは必ずしも検出可能ではない。ブラウザとコンピュータの両方がクラッシュしたり、電源やインターネットへのアクセスが失われたりする可能性があります。 – Nick

+0

JavaScriptを使用しないと不可能でしょうか?実際には、あなたはタイムアウトの慈悲に任されています。これは「何であるべきか」ではなく「何がすべきか」という質問であるから、ブラウザで閉じるべきだと私は言う。 – jun

関連する問題