ユーザー情報を DTO オブジェクトとしてセッションに保持する Tomcat 7 の Web アプリケーションがあります。また、ユーザーがセッションを持っていない場合、ユーザーをログインページに自動的にリダイレクトするプロジェクトでSpringセキュリティを有効にしています。
アプリケーションに一度ログインしてから Eclipse で Tomcat を再起動すると、セッションはフラッシュされますが、Cookie は送信されません。
つまり、サーバーの再起動後、セッションに UserDto はありませんが、有効な JSESSIONID はブラウザーに残ります。したがって、春のセキュリティは、実際にはログインしていない場合でも、ユーザーがログインしていると考えています。
なぜこうなった?(Firefoxでページ情報を表示して、JSESSIONID Cookieのタイプを確認しました - Expire: At end of session
。したがって、理想的にはサーバーの再起動時に期限切れになるはずですか?)
編集: Firefox は、FirefoxExpire: At end of session
を閉じて再起動すると、Cookie がまだ残っていると言っていますが。