- - PR -
セッションが残る現象について
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-05-30 17:51
Javaで作成された社内WEBシステムを運用しています。
TOMCAT5.5.17 Windows2003 server SqlServer2005 ログインはLDAPを使用してシングルサインオンにしています。 Aというユーザーがあるマシン限定で、システムにアクセスしたときに、 通常表示されるTOPの画面ではなく、まったく関係のない別画面が表示され原因がわからず困っています。 また、その表示される画面は一定ではありません。 セッションが残っているようだというところまではわかったのですが、 なぜ、このユーザーのこのPCだけ残ってしまうのかがわかりません。 さらに、 同じPCで違うユーザーでログインすると、問題ありません。 違うPCで問題のユーザーでログインすると、問題ありません。 何かconfの設定が足らないのでしょうか? ご教授願います。 |
|
投稿日時: 2007-05-30 18:23
関係のない画面は最後に閉じたものなのだろうか?
だとすると開発側のバグなので開発チームに問い合わせ、バグ表を切るなどがいいかと。 |
|
投稿日時: 2007-05-30 18:33
> 関係のない画面は最後に閉じたものなのだろうか?
はい。IEも再起動しています。 開発も弊社で行ったのですが、当時の担当者がいなく、 自分たちでプログラムの修正が必要です。 デバッグしたのですが、はじめの認証でセッションが残っていることが 原因で不安定な動作になっています。 ちなみに、Filterクラスをimplementsしている箇所です。 なぜ、セッションが切れないのか? WEB.XMLで明示的に何か記述するものが足らないのでしょうか? |
|
投稿日時: 2007-05-30 18:40
ブラウザのキャッシュが表示されている線は確認されましたか?
もし、本当に前回のセッションが残っているのだとしたら、HTTPレベルでのやり取りを確認すればわかるはず。 一般的にはセッションはCookieでクライアント追跡しているので、そのあたりを調べて見るのはいかがでしょう。 |
|
投稿日時: 2007-05-30 18:58
下記は推測
恐らくこのシステムは次のようになっている ログインしアプリケーションを利用すると その情報が管理テーブルに書き込まれる。 このとき、COOKIEに生成したセッションIDを書き込み 管理テーブルはそのセッションIDとユーザをキーにしている。 管理テーブルには現在アクセスしている画面が情報として書き込まれている。 そのCOOKIEがブラウザを閉じても削除されない。 再度ログインするとセッションIDとユーザをキーに管理テーブルにアクセスする。 結果が存在しているのでそのテーブルに書き込まれている画面を表示する。 その問題のPCにユーザAでアクセスしたときに COOKIEがおかしく作成された可能性があります。 (もしかしたら開発に使われたマシンで、その当時はCOOKIEの有効期限が長かった。 その際にユーザAがログインしていた、なんて可能性も) その場合は一度COOKIEを全削除してみるとか。 |
|
投稿日時: 2007-05-30 19:12
ブラウザのキャッシュおよびCOKKIEを削除してIEを再起動しても同じ現象でした。
ちなみに、インターネットオプションから行ったのみです。 クライアントとサーバー間にはルーターもなく(セグメントは同一) プロキシも入れていませんので、そこのキャッシュという線もないようです。 |
|
投稿日時: 2007-05-30 19:24
COOKIEは問題ないとして
管理テーブルには有効期限のようなものが設定されており そのユーザに関しては何故か有効期限が長く設定されているとか。 管理テーブルのキーにアプリケーションが生成するキーを利用しており そのキーはユーザの情報とクライアントの情報等を利用して作成するが そのPCでそのユーザで生成すると毎回同じキーが作成されてしまうとか。 それはさておき 確認することは ・まったく関係のない別画面が表示されるとき、 サーバのログはどの画面を表示していることになっているか 本来表示する画面>表示されているのはキャッシュ まったく関係のない別画面>表示する画面の情報をどこからか取得している ・ログ出力していないなら、デバッグでもOK キャッシュじゃない場合 ・シングルサインオン後に表示される画面はどの用に決まっているか。 リクエスト内容で判断>受け取るところから表示されるまでをデバッグ サーバ上の情報で判断>取得元から表示されるまでをデバッグ がんばってください。 |
|
投稿日時: 2007-05-30 19:50
確認中ですが、解決したようです。
2つのユーザーでおきていた現象なのですが、1台で問題なくTOPページが表示されるようになりました。(1台は本人不在で確認できていません) ログも画面と同じ内容で、 シングルサインオン後に表示される画面は、 WEB.xmlで指定しており、全員共通なため、キャッシュに的を絞っていろいろ試していました。 まず、URLを手打ちでアクセスしたらうまくいき、 でもショートカットからはうまくいかなかったので、 ショートカットを作り直したらうまくいきました。 ショートカットは何か保持しているものなのでしょうか? |