本文介绍了每个用户仅允许一个登录会话的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
基本上,我是在问,但是我使用的是ASP Identity而不是ASP.Net Membership提供商,因此,这个答案对我没有用.
Essentially I am asking this question here, but I am using ASP Identity instead of the ASP.Net Membership provider, and with that, that answer is of no use to me.
推荐答案
弄清楚如何做到这一点.登录后,我将其称为:
Figured out how to do it. On login I call this:
var key = user.UserName;
var timeOut = new TimeSpan(0, 0, HttpContext.Current.Session.Timeout, 0, 0);
HttpContext.Current.Cache.Insert(key, Session.SessionID, null, DateTime.MaxValue, timeOut, CacheItemPriority.NotRemovable, null);
Global.asax
if (Session["username"] != null)
{
var cacheKey = Session["username"].ToString();
if ((string) HttpContext.Current.Cache[cacheKey] != Session.SessionID) LogOut();
}
这篇关于每个用户仅允许一个登录会话的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!