CFWheels:重定向到隐藏参数的URL

时间:2015-12-02 19:18:51

标签: coldfusion cfwheels

我正在使用带有params的redirectTo()函数重定向到url中带有查询字符串的其他页面。出于安全考虑,这看起来并不吸引人,因为用户可以更改URL中的参数,从而改变插入到数据库中的内容。

我的代码是:

redirectTo(action="checklist", params="r=#r#&i=#insp#&d=#d#");

这周围有吗?我没有使用表单,我只是希望重定向,我希望目标操作/控制器知道我传递的内容但不在网址中显示。

2 个答案:

答案 0 :(得分:2)

您可以对URL中的变量进行模糊处理。 CfWheels让这很容易。

您只需在set(obfuscateURLs=true)文件中调用config/settings.cfm即可启用网址模糊处理。

我确信这适用于linkTo()函数。我希望它也适用于RedirectTo()函数。我现在没有设置检查。但是,如果不适用于RedirectTo(),您可以obfuscateParam()deObfuscateParam()函数为您完成工作。

警告:这只会让用户更难猜测该值。它没有加密价值。

要详细了解此信息,请阅读文档configuration and defaultsobfuscating url

答案 1 :(得分:0)

针对这种特殊情况的更好的方法是在[flash]中写入参数。1闪存与Ruby on Rails或ASP.Net中的ViewBag完全相同。它将数据存储在会话或cookie变量中,并在下一页加载结束时删除。这可以防止您回发长查询字符串,例如编码时间不到一年的人。 ObfuscateParam仅适用于数字并且非常不安全。任何高级用户都可以轻松地进行反混淆处理,对于真正以窃取数据为生的人来说更是如此。