asp.net – 实体框架4.0扩展和安全
我想使用ORM,并且一直在关注EF 4.这个平台是否可扩展.我在网上看到很多东西,但是一切看起来都非常偏向于某种方式.任何人都知道基准或非主观信息.
在这一点上,EF是否会阻止SQL注入或XSS.我知道它使用了参数化查询,但这还够吗? 任何帮助表示赞赏. 解决方法
好的,我在这里看到两个问题.
很难(和主观)回答,但IMO是的. 以下是几个原因: >使用通用查询语言(LINQ) 可伸缩性的主要实际好处是如何在LINQ-to-Entities上构建框架.当您编写查询时,您不是针对SQL Server或Oracle编写的,而是针对模型编写.根据您设置的提供程序(在web.config中),EF会将这些模型查询转换为适当的T-SQL(或P-SQL). 因此(理论上),您可以针对SQL Server编写代码,然后将web.config提供程序更改为Oracle,您的代码应该可以正常工作.显然,这不是Entity-SQL的情况(因为你正在编写T-SQL,而不是LINQ).
没有ORM工具可以真正“防止”SQL注入攻击 – 它们只能为开发人员提供防止它的工具. 与使用参数化查询的经典ADO.NET一样,Entity Framework具有Entity-SQL,允许执行预生成的SQL,存储过程等. 在这种情况下,您需要使用参数化查询来防止SQL注入.对于大多数EF工作,您将使用LINQ编写查询,这更加安全,因为它在成为SQL之前会经过很多阶段的补充. XSS在客户端被利用,例如注入JavaScript,狡猾的电子邮件等.与Entity Framework无关.使用HTML编码之类的东西在客户端完成XSS的预防. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何阻止.Net HttpWebRequest.GetResponse()引发异常
- [ASP.NET]建立有浮水印的网页
- asp.net-core – 如何使用ASP.NET Core中的JWT授权重定向到
- 在asp.net中会话超时时通知用户
- ASP.NET十七种正则表达试
- asp.net-mvc – 有没有更好的方法来使用MVC 4和Entity Fram
- asp.net – 如何从windows azure云服务中的excel文件中读取
- asp.net-mvc – MVC – 如何将模型从视图传递到控制器
- ASP.NET FileUpload
- asp.net – 在什么情况下,.NET进程和AppDomains在内存中共享
- 在asp.net httpContext.Cache中存储/检索项目最有
- 回发后用F5写的asp.net问题,因为它做了应有的事情
- ASP.NET开发人员真的需要关心线程安全吗?
- asp.net-mvc – 使用存储库模式来支持多个提供程
- asp.net – 使用响应对象生成PDF时的预加载器
- asp微信支付代码证书文件post_url.aspx和post_ur
- asp.net-mvc-2 – 什么是Html.Validate和Html.Va
- asp.net-web-api – 当启用CORS时,ASP.NET Web A
- ASP.NET MembershipProvider加密/解密
- asp.net – 如何在设计模式下打开RDLC