知道用户是否已从C#/ .NET应用程序连接

时间:2014-07-29 01:29:30

标签: c# mysql .net

我正在开发一个允许用户使用profil的应用程序......

出于安全考虑,我想拒绝连接已经连接用户,这意味着如果用户是从机器连接的,他不能从另一台用户连接,有些人可能会说cookie和会话但我和#39 ; m使用"应用程序"不是网站。

现在,我添加了一个列是我的数据库中名为" IsConnected"的用户表。因此,在登录之前,应用程序检查此列是设置为1还是0并且基于此值允许或拒绝连接到此用户,它正在工作,但并不完美。如果用户关闭应用程序而不断开列,则不会设置为0,因此用户始终处于连接状态。

我希望你们能告诉我另一种做事的方式,因为我是这个领域的新手,我需要你的帮助。

1 个答案:

答案 0 :(得分:1)

我怀疑桌面应用程序是否存在任何cookie,它是为了在浏览器中保留一些数据,您可以在没有它的情况下保留应用程序中的任何数据。
在数据库中,您可以存储上次用户活动的日期和时间以及一些设备标识符,例如mac address。连接的应用程序应刷新该信息,例如每小时一次,如果用户在两小时或更长时间内连接,则他将断开连接,并可以从不同的设备再次连接。他也应该能够明确地断开连接,但是如果应用程序崩溃或重新启动电脑或谁知道发生了什么,它必须断开用户连接,这已经做了一段时间的服务器活动。