2 haoma2514 haoma2514 于 2016.02.01 12:33 提问

asp.net Forms验证的奇葩问题 1C

用户在前台登录并记住账号密码。登录成功,发凭证。
后台管理员将该用户删除。
1.用户_未点击注销_直接关闭浏览器,下次输入地址访问依然是登录状态。因为凭证没有销毁。
2.如果用户登录时_未选择记住密码_,当被管理员被删除后,未注销登录且未关闭浏览器的情况下还可以继续浏览网页。
这个怎么解决? 没有C币了。不好意思 大家来讨论一下

2个回答

qingzhishuishou
qingzhishuishou   2016.02.01 15:19

浏览器关闭一般session会消失,如果你说没消失这种情况应该是拟关闭的是当前窗口而不是浏览器,要不然就是设置了过期时间
按道理来说,删除用户这种情况并不常见,如果非要这样做的话,建议打开页面的时候拿到session,根据session去数据拉去一次信息,
存在正常,不存在特殊处理一下。

haoma2514
haoma2514 关键这个forms验证不是用的session啊,凭证是用的cookie保存到客户端的。 所以如果cookie没有过期,就算数据库没有当前用户一样可以登录啊。
接近 2 年之前 回复
haoma2514
haoma2514   2016.02.04 12:09

简而言之就是当管理员将当前用户删除后,怎么将其强制下线,或者将服务器发给当前用户客户端的凭证销毁,让用户下线后不能再登录。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!