如何杀死其他用户的会话

时间:2011-01-23 09:49:02

标签: asp.net session

假设我有网络应用程序。许多用户登录和访问很少限制内容。我希望管理员有权力踢出任何用户,因此用户将无法访问该页面的受限内容。在这种情况下,如果管理员可以杀死任何特定用户的会话,那么它是可能的。所以请告诉asp.net当我的会话不同时我怎么能强行杀死其他会话。如何使用Web表单技术设计此类Web应用程序。请建议。

感谢

1 个答案:

答案 0 :(得分:3)

你无法杀死其他会话。

可以做的是在一些全局上下文(应用程序,文本文件或数据库)中保存所有当前登录用户的列表,并使管理员为每个标记添加全局“标记”该用户在显示受限内容之前被“禁止”,除了检查用户是否已登录以确保他没有被标记。

使用应用程序级别变量是最简单的方法,假设您没有同时拥有数千个用户,您可以在global.asax中的Session_Start事件中添加用户,并在Session_End事件中将其删除。将用户存储为普通用户List<string>,并拥有单独的列表,其中包含“已标记/已禁止”的用户。

希望逻辑足够清楚,如果您需要帮助实现它,请告诉我。