我目前正在研究设计一个使用drools决策表电子表格格式(链接到jboss文档)的业务解决方案。业务用户将拥有和维护电子表格中的规则。
使用决策表格式的一个主要好处是,将来可以很容易地修改规则以适应不同的规则结构。
Drools将基于电子表格的规则数据编译为本机规则格式。编译器的一个示例实现可以看到这里。
我将从安全团队得到的一个关注是,规则电子表格数据是用户输入,应该验证所有用户输入的正确性,以确保它不包含恶意数据(有关输入验证的基本原理,请参阅此处。)。
问题:
发布于 2013-01-15 11:59:59
由于规则可以包含java代码,因此安全风险实际上比恶意数据更大。用户可以很容易地插入自己选择的java代码来访问您的系统。
您可以使用drools验证器并编写自己的规则,但不可能消除所有的风险。
使用第三方来验证规则可能有效,但是进行验证的人必须是程序员才能正确评估风险,这将抵消使用电子表格的优点。
在我看来,电子表格被高估了:
我建议,一旦您的项目变得稳定,抛弃电子表格,为决策表实现您自己的用户界面,或者如果您使用guvnor,将其嵌入到您的web应用程序中。
https://stackoverflow.com/questions/14327880
复制相似问题