1、增加一个系统选项KEY背景
1、DataSourceService中存在安全问题的接口
smartbi.freequery.client.datasource.DataSourceService.execute(String, String, int, boolean, boolean)
smartbi.freequery.client.datasource.DataSourceService.executeNoCacheable(String, String)
smartbi.freequery.client.datasource.DataSourceService.executeUpdate(String, String)
2、上面接口的主要使用场景是宏代码、任务定制脚本
3、针对上面用户可以执行sql的接口存在可能的安全问题,我们提供如下处理方案
- 增加一个系统选项KEY_ALLOW_DIRECT_EXECUTE_
...
- SQL,如果有安全需要的客户 可以设置KEY_ALLOW_DIRECT_EXECUTE_SQL=
...
- false,禁止此接口的调用
...
- 替换的取数方案 参考wiki基于数据模型取数接口
https://wiki.smartbi.com.cn/pages/viewpage.action?smt_poid=43&pageId=136905788
...
...
- 增加一个系统选项 KEY_FORBIDDEN_DIRECT_EXECUTE_SQL = true 禁止新用户调用此接口
...