java如何写一个防止同账号不同ip登录的程序?
-
服务端存储sessionId,帐号,客户端IP,以及更新时间,比如用map存储,key为sessionId,value为帐号,IP,以及更新时间.
-
登录的时候遍历map,看看map里面是否已经有该帐号了,如果有,检查其更新时间是否在有效期(比如规定的session有效期为5分钟,更新时间在4分钟前,则判为有效),如果有效,对比存储的IP和现在登录的客户端IP,如果IP不一样,则判定为不同IP登录.
-
非登录的访问,通过过滤器进行当前session是否为登录状态,是则通过,并且注意更新那个更新时间,否则跳转到登录页面.
-
用户注销时将map中对应的信息删除.
-
搞个定时期,定时检查map中是否有过期的信息,过期则删除对应信息.
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: C++ STL中有两种find
- 下一篇: C++中substr、find、refind函数的用法
