4

实体框架函数是否会自动转义输入以防止注入?

在我的 SQL DB 层中,我有一个 SPROCnvarchar(max)作为输入。在我的 EDMX 中,SPROC 映射到函数导入,因为methodName(string input) 我需要手动转义输入以防止注入还是实体框架自动执行此操作?

4

2 回答 2

4

要看...

EF 确实为您转义输入,因此在大多数情况下您是安全的。

但是,如果您在带有输入的过程中创建动态 SQL 或使用输入调用另一个函数或过程,您仍然会受到 SQL 注入攻击。

为了防止 SQL 注入,必须遵循执行路径的最后一部分并确保输入经过验证。

于 2012-06-19T20:06:43.973 回答
2

只需使用存储过程,您就不需要转义输入,除非您在存储过程中构建稍后将执行的动态 SQL。

于 2012-06-19T18:58:50.817 回答