首页 > 编程 > .NET > 正文

如何同一时间一个帐号只有一个用户使用?(asp.net)

2024-07-10 12:56:52
字体:
来源:转载
供稿:网友
用户真是变态,为了安全,已经设置了网卡绑定、ip绑定、https,他还要求一个帐号只能由一个人使用。总不成我在每个页面去判定是否已经由其他人使用了他的帐号吧!
asp.net有个eventhandle是prerequesthandlerexecute,好了,我们就在这个事件里面判用户是否已经被其他人登录了,如果是,则转向到提示页面吧。
//当前session是否存在
if(system.web.httpcontext.current.session!=null)
{
//用户是否登录
if(system.web.httpcontext.current.session["userid"]!=null)
{
//获取用户登录的sessionid,在登录页面设置,并判定两个id是否是相同的,不同嘛则后来有人用你的帐号登录了。
if(application["session"+system.web.httpcontext.current.session["userid"].tostring()].tostring() !=system.web.httpcontext.current.session.sessionid)
{
response.redirect("/otheronelogin.html",true);
}
}
}
//在初始化global中hook
public global()
{
this.prerequesthandlerexecute += new system.eventhandler(this.global_prerequesthandlerexecute);
}
//登录时设定的代码
application.lock();
application["session"+session["userid"].tostring()]=session.sessionid;
application.unlock();

作者blog:http://blog.csdn.net/happybirds/


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表