
多重ログインを禁止にしたいのですが…。
C♯、ASP.NET、DBはPostgresSQLという環境です。
WEBを作っているのですが、ログイン周りで悩んでいるので教えてください。
要件としては、多重ログインは許可しない、同一IDでログインに成功した場合、
先に入ったほうは強制ログアウトという話です。
たとえば、ユーザAがログインした後、別の端末からまたユーザAでログインすると、
最初にログインしたほうはログアウト状態になります。
ログイン情報を管理するテーブルを用意して、ログイン成功時に、そのユーザが
ログイン中のステータスだったら…とか考えてみたんですが、強制ログアウトへ
もって行く仕組みが思いつかず…。
何か手がかりや、参考サイト、またはサンプルなどアドバイスいただけないでしょうか。
宜しくお願いします。
No.1ベストアンサー
- 回答日時:
クッキーにログイン時刻を書き込めばいけると思いますよ。
-----------------------
15:00 A端末でユーザーIDを"hoge"でログイン
→A端末クッキーにログイン時刻15:00と書き込み
→DBに"hoge"のログイン時刻15:00と書き込み
-----------------------
↓
A端末で画面を開く際にクッキーのログイン時刻(15:00)="hoge"のDBログイン時刻(15:00)を比較して同一なので操作継続
↓
-----------------------
15:30 B端末でユーザーIDを"hoge"でログイン
→B端末クッキーにログイン時刻15:30と書き込み
→DBに"hoge"のログイン時刻15:30と書き込み
-----------------------
↓
A端末で画面を開く際にクッキーのログイン時刻(15:00)="hoge"のDBログイン時刻(15:30)を比較してDBログイン時刻が15:30へ更新されていて一致しないのでログアウト処理実行
B端末で画面を開く際にクッキーのログイン時刻(15:30)="hoge"のDBログイン時刻(15:30)を比較して同一なので操作継続
-----------------------
というロジックを今思いつきました。
参考程度にどうぞ
No.3
- 回答日時:
普通、後からログインしたほうに「すでにログイン済みです。
」みたいなメッセージ出してログインさせないようにすると思いますが・・・。そんなに重要な要件なのでしょうか?
そうでないなら、難しいことを考えるのはやめたほうがよいです。

No.2
- 回答日時:
ひとつの考え方ですが……。
強制ログアウト自体は、可能なのでしょうか?
もし、「この ID を強制的にログアウト」が可能であれば、ログイン処理の冒頭で、無条件にログアウトさせてしまうというのも処理の方法ではあります。
既にログインしていたらログアウト処理という方法にするのか、
ログアウト処理のほうを、「ログインしていないIDだったらなにもしない」というロジックにしておいて、ログイン処理の冒頭で、ログアウト処理という流れにするかという問題です。
ログインしてないなら、「ログインしていないIDだったらなにもしない」なので影響なし。
既にログインしていたら、(既にログインしている方のユーザーが)ログアウト処理。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP 「ログイン機能を持たせる」説明が気難しいです。 2 2022/10/11 02:59
- ルーター・ネットワーク機器 NUROのルータF660Aについて 2 2022/09/07 11:44
- LINE LINEの不正ログインについて パソコン等からのログインは拒否設定していますが、万が一スマホから不正 1 2023/06/18 12:49
- ハッキング・フィッシング詐欺 OKWAVEのログインと会員登録と新規登録 1 2023/04/10 17:09
- LINE PCでラインを使う場合について教えてください。 3 2023/07/10 11:07
- Chrome(クローム) 仕事で使っているGmailがログインできません。 ログインすると、 「組織がプロフィールの作成を求め 1 2022/06/16 08:40
- タブレット Linuxパソコンからのログインと表示される 1 2023/04/12 15:58
- 婚活 マッチングアプリをご利用の方に質問です。 毎日メッセージをしていて突然ログインしなくなった場合に考え 3 2022/05/13 00:47
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- その他(IT・Webサービス) ってヤフーをログアウトしてしまいました。新規作成を押すと電話番号でログインするが出て、ログインを押す 1 2023/02/08 16:50
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのセルにユーザー名...
-
YouTubeが毎回ログインしないと...
-
CSVファイルを添付するときにパ...
-
Steamのアカウントにログインで...
-
カカオトークを退会せずにアン...
-
email.ne.jpのメールアドレスを...
-
インスタの乗っ取り解除につい...
-
不正ログインされました。対応...
-
携帯電話を解約してもSMSの受信...
-
「そのメールアドレスはすでに...
-
メールを返信したら、英語のメ...
-
YahooIDをパスワード形式にした...
-
Twitterの こうしたアク...
-
インスタのアカウントの消し方...
-
インターネットカフェでCD書き...
-
verify@twitter.comから、メー...
-
runas実行した時にきかれるパス...
-
インスタの捨て垢で友達のスト...
-
~@live.jpのメール受信につい...
-
ユニクロやGUのシフト管理アプ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelのセルにユーザー名...
-
Steamのアカウントにログインで...
-
ユニクロやGUのシフト管理アプ...
-
runas実行した時にきかれるパス...
-
インスタの乗っ取り解除につい...
-
メールを返信したら、英語のメ...
-
CSVファイルを添付するときにパ...
-
YouTubeが毎回ログインしないと...
-
email.ne.jpのメールアドレスを...
-
カカオで退会せずに、アプリだ...
-
携帯電話を解約してもSMSの受信...
-
iPhoneのiCloudメールなよです...
-
メールアドレスで上付きのハイフン
-
メールをパスワードつきで送る方法
-
「そのメールアドレスはすでに...
-
インスタの捨て垢で友達のスト...
-
「@」(アットマーク)の無いメ...
-
sageがついてるメールアドレス
-
スタディプラスではアカウント...
-
カカオトークを退会せずにアン...
おすすめ情報