.net – 我们为什么不在视图中使用域对象?
发布时间:2020-12-16 06:31:40 所属栏目:asp.Net 来源:网络整理
导读:我很困惑为什么在视图中使用域对象是不好的做法?我被告知可以留下模型绑定攻击,但我不确定这是什么或如何做到这一点.我也不太明白如何将属性复制到viewmodel将解决此问题. 提前致谢 解决方法 您的域对象通常包含定义标志或位的属性,如isAdmin,isDeleted,isA
我很困惑为什么在视图中使用域对象是不好的做法?我被告知可以留下模型绑定攻击,但我不确定这是什么或如何做到这一点.我也不太明白如何将属性复制到viewmodel将解决此问题.
提前致谢 解决方法
您的域对象通常包含定义标志或位的属性,如isAdmin,isDeleted,isAuthorized或您可能不希望最终用户搞砸的任何其他安全或敏感信息,即使您只是以您给出的只读状态显示它视图/ html中的属性名称,为一些“智能用户”提供了使用POST操作的机会,如果您没有采取正确的预防措施,这可能会导致严重漏洞.
如果您使用ViewModel,则必须从ViewModel< - >重新映射.模型(域对象),在此重新映射中,您可以确保分配只是您希望从任何特定用户获得的分配: if(CurrentUser.IsAdmin) { //Assign just if the currrent user is admin Model.IsDeleted = ViewModel.Delete; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何测试我的Web应用程序是否可以处理大量流
- asp.net – 在后面的代码中注入标记
- asp.net – 避免表格重新提交
- asp.net – page load()或者page init()
- asp.net – ASP .net MVC调用默认控制器和操作vs设置启动页
- asp.net – 多久我应该打开/关闭我的Booksleeve连接?
- ASP.NET中模式弹出窗口的最佳选择?
- asp.net-mvc – 使用SimpleMembership获取用户信息
- 如何检查ASP.NET MVC View如果站点在localhost或127.0.0.1上
- asp.net-mvc – MVC 3部分页面(Razor)和MVC 3视图页面与布局
推荐文章
站长推荐
- asp.net – RequiredFieldValidator – 如何摆脱
- Debug ASP.NET Core 2.0源代码
- 如何通过ASP.NET MVC上传文件并显示进度条?
- asp.net-mvc-3 – ASP.NET MVC – 防止Ajax.Acti
- asp.net-mvc-2 – 我的MVC2站点需要一个crossdom
- 身份验证 – ASP:使用JMail进行SMTP身份验证失败
- asp.net-mvc – Paypal沙箱直接付款内部错误1000
- asp.net – 使用DataPager而不检索每个请求的所有
- asp.net – 将TemplateField的可见性绑定到Bound
- asp.net-mvc – 在实体框架中使用存储过程
热点阅读