• ベストアンサー

多重ログイン防止するための開発について

ASPの社内システムで、多重ログインを防止をするのですが、社内環境によってDHCP(ランダムのIP)を採用している場合があり、DBなどでIPを管理するマスタでは対応しきれません。 この手の開発の実例は当然あるかと思われますが、 上記のようなシステム構築においてどのようなシステム設計が妥当でしょうか。 ご教授をお願いいたします。 ルール) ・ログイン状況をDBで持たせるのは可能 ・Sessionでのログイン状況を持たせるのは可能 ・cookieでのログイン状況を持たせるのは不可 ・ログイン状況の有効が切れる条件としては以下の3点  1:ログアウトをした場合  2:放置された状態で30分経過された場合  3:ブラウザを閉じられた場合 以上です。 大変お手数をおかけしますが、宜しくお願いします。 なお、情報不足の場合は随時補足いたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

DHCPに通常はリリース期間があるので、期間中はパソコンを再起動しても同じIPアドレスが振られます。 「DBなどでIPを管理するマスタ」でOKと思います。 (ユーザーID, IPアドレス) の組み合わせをログイン時にDBに登録。 ただし、既にユーザーIDに対応するIPアドレスがDBにある場合はエラーとする。 ログアウト時またはセッションタイムアウトでDBから削除。 前提条件 DHCPのリリース期間が設定されている。 プロ串サーバを通さない。 >ブラウザを閉じられた場合 技術系のMLや掲示板でよく話題になりますが、ブラウザが閉じられたのをサーバに通知する方法はありません。 複数のパソコンを使うユーザーには、ログオフを徹底されるしかないですね。

soushi_ni
質問者

お礼

>ブラウザを閉じられた場合 やはり、このような場合は特別に「管理者メニュー」などで救済処置をしないといけないのでしょうか。

その他の回答 (2)

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.3

> やはり、このような場合は特別に「管理者メニュー」などで救済処置をしないといけないのでしょうか。 30分過ぎれば自動的に復旧しますが、緊急用にそういう機能を用意しておくのがいいでしょう。

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

IPで管理しようとしていたということは、 おおむねコンピュータでログインを区別するということであるとすると MACで管理すればよいでにはないでしょうか?