我需要确保访问我的Web应用程序的每个用户只能从一台计算机上执行此操作,因此100个用户将意味着100台计算机.什么是最好的解决方案?在首次登录时是否检测并存储IP好主意?我认为即使在会话的生命周期内IP也可能发生变化,这是对的吗?我还想在用户首次登录时存储cookie.然后将这些cookie分配给用户,就像我已经使用密码和用户名一样,以及每次访问应用程序时检查是否存在该cookie.
请告诉我您认为最佳解决方案.如果重要的话,我的后端是php / mysql.
编辑:我需要澄清……这是正常会话管理的补充.我需要限制用户只能从一台特定的机器登录到Web应用程序.因此,如果用户最初在工作时从他的计算机登录并且我存储了它的ip / cookie / etc,那么客户端注销(甚至没有),回家并试图登录将无法做到这一点.我同意它的可怕想法,但客户坚持:)
解决方法:
对于移动客户端或在有线和无线网络之间切换的客户端,IP地址可能会发生变化.您最好的选择可能是在第一次连接时为每个客户端提供随机生成的UID(如果它还没有cookie).然后,您可以检查相同的用户名是否未使用两个不同的UID进行连接.
诀窍是你需要确保将这个UID计时,这样如果用户去另一台计算机,他们就不会被锁定.也许UID的一个改变是可以的,但他们不能回到已经被使用的UID?