CFWheels ORM和SQL注入

时间:2015-10-07 16:17:31

标签: coldfusion cfwheels

我是Coldfusion的新手,我以前的背景是使用codeIgniter在PHP中。我目前正在使用CFWheels进行项目。

我有一个插入声明

n_building = model("buildings").new();
n_building.name = name;
n_building.save();

阅读声明

room = model("rooms").findOne(where="name='#name#' AND b_id='#b_id#'");

是上述最佳做法还是可以在安全性方面更好地编写。

问题是,使用ORM会自动保护我的查询免受SQL注入或任何其他形式的注入或安全风险吗?我是否必须使用其他内容,如果是,我该如何修改上述声明?

2 个答案:

答案 0 :(得分:1)

据我所知,cfwheels ORM将参数化ORM构建的查询。 它将在Statement中插入<cfqueryparam>。 但是您可以启用调试并轻松查看发送到数据库的查询。

答案 1 :(得分:1)

除非您使用参数参数化并将其设置为false,否则

默认情况下,CfWheels会将cfqueryparam用于所有内容。所以你不必担心Sql注入。

阅读findAll method description中的参数化参数。

使用动态查找器,John Whish建议您的代码可以更好。