私が取り組んでいる製品は、潜在的な顧客による厳しいセキュリティ監査を受け、認証が行われる前に Tomcat が JSESSIONID Cookie を設定することに腹を立てています。つまり、Tomcat は、ステートレス ログイン ページが読み込まれるとき、ただしログイン前にこの Cookie を設定します。
彼らは次のいずれかを提案します。
- ログイン後に新しい JSESSIONID Cookie を発行する
- JSESSIONID Cookie がログイン ページの最初の場所 (つまり、認証が行われる前) に設定されるのを防ぎます。
私はこのサイトで JSESSIONID 関連のすべてを調べましたが、簡単な答えが見つかりません。私はいくつかのアイデアを望んでいます。それぞれの私の最善の解決策は次のとおりです。
- ログイン直後に、すべての属性をコピーし、古いセッションを無効にし、新しいセッションを作成し、値をコピーし、それをリクエストに関連付けて、それが機能することを期待して、セッション (id を除く) を複製します。
- ログインページが最初に読み込まれる前に、JSESSIONID Cookie を取り除くチェーンの最後にサーブレット Filter を作成します。そして、JSESSIONID が設定されていなくてもログイン要求が機能することを願っています。
私は少し眠らなければなりませんが、朝にこれらを試してみます. あなたのように、私よりずっと賢い人からフィードバックやより良い提案を得ることができれば素晴らしいことです!
とにかく、他の多くの人が同様のことをしたいと思っているように見えるので、ここに結果を投稿します.