【发布时间】:2014-09-17 18:00:51
【问题描述】:
我正在使用 ASP .NET MVC 4 开发一个网站,我使用 SimpleMembership 进行身份验证。 我需要限制用户使用他的帐户进行不超过特定数量的会话。在用户达到他的限制后,我想使他最旧的经过身份验证的会话无效。 计数会话可以在 global.asax 的 session_start 和 session_end 方法中实现,但我真的不确定如何进行失效。任何想法将不胜感激。
【问题讨论】:
我正在使用 ASP .NET MVC 4 开发一个网站,我使用 SimpleMembership 进行身份验证。 我需要限制用户使用他的帐户进行不超过特定数量的会话。在用户达到他的限制后,我想使他最旧的经过身份验证的会话无效。 计数会话可以在 global.asax 的 session_start 和 session_end 方法中实现,但我真的不确定如何进行失效。任何想法将不胜感激。
【问题讨论】:
聚会有点晚了,但我是这样做的。
我创建了一个属性和一个静态 void(用于获取和设置缓存值)
【讨论】:
对于您的问题,我会从会话中获取密钥,然后删除最旧的密钥。
var keys = Context.Session.Keys; //get the keys
Context.Session.Remove(keys[0]; // remove first key in the list.
【讨论】: