サーバーでホストされている ASP.Net Web アプリケーションがあります。
ネットワーク接続を介して同じユーザーが異なるマシンにログインすることを制限したいが、特定の条件を満たす必要があります。
そこで、User テーブルに 3 つの新しい列を追加して、同じユーザーが同じマシンにログインしているか、別のマシンにログインしているかを追跡できるようにすることを考えました。
これらの列は次のようなものです:
IsLoggedIn
: 特定のユーザーがすでにログインしているかどうかを確認します。SessionID
: 同じユーザー インスタンスが開かれているかどうかを確認します。IPAddress
: 同じユーザーが同じ PC にいるか、別の PC にいるかを確認します。
これは、以下の条件のいくつかを満たす必要がありますが、一部の条件を満たしていません。
条件は次のとおりです。
- 両方のコンピューターが同じ LAN 上にあります。
- 各コンピューターは、さまざまな場所からインターネット経由でアプリケーションにアクセスしています。
- 各コンピューターは、同じ場所からインターネット経由でアプリケーションにアクセスしています。
- 一部のアプリケーションがホストされているため、IP アドレスだけでは異なるコンピューターを区別するのに十分ではありません。
- 一部のユーザーは、ログアウトせずにブラウザを閉じます。そのため、この状況ではセッションが終了しない場合があります。
私のアプリケーションを満たすためにこれらすべての条件を達成する方法を誰かが提案できますか? 主に4番と5番。
前もって感謝します。