目前我有一个客户端和管理网页。有多个用户将登录到客户端页面。在管理页面中,当我在管理页面中恢复数据库时,我需要注销当前登录到客户端页面的所有用户。任何想法应该如何完成?我目前使用的语言是传统的ASP。如果它可以在ASP.NET中完成,那也可以。谢谢。强制用户注销
强制用户注销
回答
也许最简单的方法是定义一个Application
变量,指示您的网站处于维护状态,并且在每个通过服务器端包含的页面中,检查该变量并重定向到相应的错误页面。
我很抱歉没有解释详细情况。注销的原因是在管理员恢复数据库后获取最新信息。所以我需要注销所有用户并重置所有会话变量,因为我使用的所有会话都是旧会话。 – lipkee85
这实际上取决于您缓存的内容。如果是数据,则可以清除缓存的数据,而不是强制用户再次登录。
如果是数据或权限/安全性更改,则可以在数据库中设置一个名为SchemaVersion的设置,用于存储数据库的当前版本。每个登录到应用程序的用户请求都可以将Cookie /会话版本与数据库中的cookie /会话版本进行比较,如果不同,则会让客户端删除会话/ cookie并强制重新登录。
据微软的帮助文章,你可以reset the session这样的:
Session.Abandon();
Response.Cookies.Add(new HttpCookie("ASP.NET_SessionId", ""));
而且从MSDN可以clear your cookie这样的:
if (HttpContext.Current.Request.Cookies["MyCookieName"] != null)
{
HttpCookie aCookie = HttpContext.Current.Request.Cookies["MyCookieName"];
aCookie.Expires = DateTime.Now.AddDays(-10);
aCookie.Value = "";
HttpContext.Current.Response.Cookies.Add(aCookie);
}
这应该强制登录,但我没有证实了这一点。
因此,在总结,你可以使用ASP.NET缓存来存储数据库架构版本和:
在页面加载的开始调用一个辅助类LoginResetHelper.IsDbValid()
,看看我们是否需要重新登录
在辅助类,你会问
if (Cache["SchemaVersion"] == null)
{
// retrieve schemaVersion from db
Cache.Add("SchemaVersion", schemaVersion);
}
HttpCookie oCookie = new HttpCookie("ClientSchemaVersion");
if (Cache["SchemaVersion"] == oCookie.Value)
return true;
return false;
如果IsDbValue为真,则继续正常
如果它是假的,然后调用LoginResetHelper.ResetLogin()
并重定向到登录页面。
在ResetLogin()
应执行我上面
- 1. 强制注销用户laravel
- 2. 强制用户在设计中注销
- 3. 强制非活动用户注销
- 4. 用户会话超时强制注销
- 5. 强制注销vaadin中的用户。如何显示消息以强制注销用户
- 6. 强制注销所有在线用户中的特定用户
- 7. ADAL JS强制注销SPA
- 8. 如何定制ADFS 3.0注销页面以强制注销?
- 9. 如何强制注销使用$ _SESSION
- 10. 流星:在服务器端强制用户注销
- 11. facebook php api多个用户一台计算机强制注销
- 12. 会话过期时,如何强制用户注销?
- 13. 如何强制在自己的云端注销用户?
- 14. 我可以强制用户从ejabberd注销吗?
- 15. 设计强制登录用户去注销automaitcaly
- 16. 如何强制用户注销子域修改?
- 17. 如何强制用户注销锁定在MVC5
- 18. 如果用户被删除,强制用户从应用程序注销。
- 19. 解析:当用户强制终止应用程序时注销匿名用户
- 20. 如果多登录,则强制注销
- 21. 强制所有vBulletin会话注销
- 22. 在登录时CakePHP 3强制注销
- 23. 远程桌面强制注销
- 24. 强制所有会话注销
- 25. XAML强制注销(强制页面导航)
- 26. 注销 - Taleo用户
- 27. Sharepoint用户注销
- 28. 强制.net登录控制,使用户注销,如果cookie为空
- 29. 注销从控制台设计用户?
- 30. 从Rails应用程序为某些用户设计强制注销
提到的结算功能你是说,你要通知在页面的用户应该注销并重新登录,或者是你与他们舒服被迫登录下一次他们去网站上的一个页面? – Jacob