ASP.NET MVC对不存在的用户进行身份验证和授权
我正在使用DropCreate
DatabaseAlways初始化程序,因此每次启动应用程序时都会销毁我的数据库(至少我希望如此).有趣的是我仍然认为自己已登录.我通过了Authorize属性并可以执行危险的操作.这可能是因为之前测试的剩余cookie.
我的应用程序的注册/登录部分是未触及的MVC 4 Internet应用程序模板. ASP.NET不应该检查保存在DB中的用户的cookie值吗? WebSecurity.IsAuthenticated返回true,WebSecurity.CurrentUserName返回名称. 我对吗?如果是这样,是否意味着我应该始终使用WebSecurity.CurrentUserId来确定用户是否已登录?在这种情况下,WebSecurity.IsAuthenticated和User.Identity.IsAuthenticated看起来很无用.我可以删除用户的帐户,他或她不受影响.如果我错了,应该采取哪些不同的做法? 解决方法
如果要真实地检查用户是否尚未删除,则只需查阅数据库即可.
请注意,用户和管理员同时工作.这意味着用户可以在经过身份验证后一秒钟内删除.一个cookie甚至可以是一两秒钟(!),用户可能刚被删除. 在一个最悲观的场景中,用户键入有效的用户名和密码并成功登录并在以后的一个请求中获得“抱歉,您的帐户已被删除”(因为该帐户实际上已被删除). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 用于服务应用程序的Microsoft Graph API au
- asp.net-mvc – Customer Feedback替代UserVoice?
- asp.net – asp:UpdateProgress – 保留换行符
- asp.net-mvc-2 – 我的MVC2应用程序可以在查询字符串参数上
- asp.net – 使用jQuery显示ashx图像?
- asp.net-mvc – 如何使用ASP.NET MVC 5和OWIN获取Facebook的
- asp.net-identity – 由于其保护级别,Microsoft.Owin.Secur
- ASP.NET MVC 3 Razor:初始化一个JavaScript数组
- asp.net – 尝试的转移似乎包含数据泄漏?
- asp.net – 在Web应用程序项目中使用codefile
- active-directory – IdentityServer3 – 适用于
- asp.net-mvc – 返回空ActionResult
- asp.net – IIS上的远程调试 – 访问被拒绝的梦魇
- asp.net-mvc – Asp.net Mvc:使用LINQ to SQL创
- asp.net-web-api – GlobalConfiguration – 尝试
- asp.net-mvc – 如何使用post或get来检查控制器是
- asp.net-core-mvc – MVC6路由到单页面应用程序而
- 使用AspNetPager与GridView完成分页
- asp.net – 从类型’DBNull’到类型’String’的
- asp.net – 将特定文件夹映射到web.config中的Ht