JS 中FR.remoteEvaluate 和FR.remoteEvaluateAsync这两个接口,可以用来调用 SQL 公式,其使用频率较高,但这个接口也存在巨大的安全风险。
这两个接口中执行的 SQL 在请求中是明文的,只要某张模板使用了这个方法,或者攻击者知道有这个接口,就可以通过前端执行 JS 来实现对数据库的增删查改等操作,其风险等级已经相当于远程执行了。所以 FineReport9.0 和 FineReport10.0 都新增了脚本调用公式限制这一功能。
当用户使用了 JS 中的 FR.remoteEvaluate和FR.remoteEvaluateAsync这两个接口,并且接口的 formula 使用的是公式中的报表类函数,如果用户开启了脚本调用公式限制开关,则效果预览时弹出提示框信息此调用存在安全风险,如需使用请在安全管理中修改脚本调用公式限制。
FineReport10.0:登录决策系统,进入管理系统>安全管理>安全防护>脚本调用公式限制。

FineReport9.0:登录决策系统,进入管理系统>系统管理>常规>脚本调用公式限制。
