ASP.NET将用户从服务器注销
ASP.NET log user out from server
我正在使用ASP.NET构建一个web应用程序,安全要求非常严格;目前,如果用户空闲2分钟,应用程序就会锁定。每个页面都注册了一个javascript计时器,该计时器在页面加载时启动,并在2分钟后将它们重定向到锁定页面。当锁定页面加载到服务器上时,它会在数据库中将用户标记为"锁定",以阻止他们在不解锁的情况下导航离开。锁定页面还有一个设置为15分钟的计时器,在此时间之后,用户应完全注销。
目前,我通过将js设置为重定向到一个注销页面来实现这一点,该页面在点击时将用户注销,15分钟后就会触发。但是没有什么可以阻止用户刷新锁定页面并无限期地重新启动15分钟计时器。我希望服务器也能正常运行,并在指定时间后将其引导出来。时间不必完全匹配:在10秒内就可以了。
那么:有办法做到这一点吗?理想情况下,锁定页面会启动一个服务器端进程,在时间用完后引导用户退出。不知道如何实现这样的东西,如果它甚至是可能的
持久数据存储使用什么?数据库?
我正在编写一个类似的客户端设置,以提醒用户,如果用户没有单击指示他们仍在的按钮,他们将在15分钟后注销。还有两分钟就要开始了。
这正是我经理想要的便利。我已经在服务器端进行了检查,以确保在用户超过时间限制时将其注销。实际上,有两张支票。
我的第一个检查是保存用户会话令牌的cookie的新鲜度。它的新鲜度在用户每次服务器请求后设置为15分钟。如果cookie已过期,则用户将注销。
另一个是用户最后一次服务器请求的记录。如果时间超过十五分钟,则用户将注销。
如果我是你,我会用第二种方案。
在我的数据库中,我会创建一个锁定表,在其他数据中,该表将有两列,指示用户是否被锁定以及锁定时间。十五分钟后,如果用户没有完成解除锁定的过程,则注销该用户。如果他们明确执行了该过程,请清除锁定记录。这样,仅仅刷新不会清除包含锁定时间的数据库列。但它可以让你检查这十五分钟是否已经过去了。
如果允许锁定激活时间为null,则可以将这两列压缩为一列。但我更喜欢有一个列,明确说明锁定是否有效。您也可以将这些列添加到现有的用户数据库中。
- 使用JSP从服务器检索和显示图像
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 客户端服务器REST API captcha实现
- 正在将base64 jpeg从input-type=file上传到服务器
- Webpack开发服务器和React服务器端渲染
- 提示使用服务器端事件处理程序激活JavaScript
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 如何使用Socket.io将命令从客户端发送到服务器
- jQuery blueimp文件上传:将N-1个文件上传到IE中的服务器
- 使用jasmine模拟对服务器的调用
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- 从客户端获取修改后的对象,并将其与服务器上的原始对象组合
- 通过ajax将坐标传递到php服务器端,并在处理后检索到javascript
- 如何使用Javascript将空数组发送到PHP服务器
- 显示具有服务器端自动时间注销的同步倒计时计时器
- 如何从Meteor.js中的服务器注销用户
- 如何在注销后从服务器重新加载angular应用程序,而不使用浏览器缓存
- ASP.NET将用户从服务器注销
- 当前会话的服务器端注销
- 在onbeforeunload中注销用户并将日志发送到服务器