表单身份验证 - 以编程方式注销用户

Forms Authentication - Signing out a user programatically

我想知道如何使用基于表单的身份验证以编程方式注销用户。

在线用户:

如果我是管理员,我如何将 User2 引导出系统? FormsAuthentication.Signout() 会签署 out/delete 来自当前用户 (Admin) 的 cookie,这毫无意义。

否则,我可以在数据库中放置一个标志 - 在下次访问时,操作过滤器会强制他们进入注销页面并让他们注销。但这似乎是一个黑客。

当前的内置功能不允许您注销非当前确定,因此您可以使用数据库中带有标志的选项。或者作为另一种可能的方式 - 将用户的这个标志存储在像 HttpContext.Current.Cache 这样的全局存储中,然后在每个用户请求时检查它。但在那种情况下,如果您使用 Remember Me 功能,这可能不起作用,因为此存储将随着应用程序重新启动而刷新。