我正在寻找一种方法来破坏特定用户的ASP.net会员会话。我这样做的原因是作为管理员我想删除用户。这工作正常,但如果用户已经有一个活动会话,他仍然被标记为“在线”,直到该会话终止(我每次使用Current.User.Identity.IsAuthenticated验证)。
如何根据授权用户杀死会话。这种方式,当我做Memberships.DeleteUser(用户名)我也可以做Sessions.KillByUser(用户名)
提前致谢
对于遇到相同问题的任何人,我最后都遵循他们的建议并使用以下方法: http://www.chillaxen.com/2011/02/asp-net-force-a-user-offline-as-admin-destroy-a-session-by-username/
答案 0 :(得分:1)
如何添加拦截PostAuthorizeRequest事件的HttpModule:根据您要“销毁”的全局ID列表检查用户凭据。如果匹配,则终止用户会话。
答案 1 :(得分:0)
正如雅各布建议或者你可以尝试这个...... 在Global.asax中检查登录用户是否在“要脱机的用户列表”中,然后通过表单身份验证或删除cookie注销用户。