1

有没有办法将 Gremlin 表达式限制为 Gremlin API?我想将 gremlin 作为一个规则引擎的一部分嵌入,但是在过滤器中调用任何内容的可能性是有风险的。

g.v(1).outE.filter{ new Socket('localhost', 8080). ... }

有没有办法将执行限制在一组安全的接口上?

4

1 回答 1

1

一种方法可能是研究 Groovy 在通过 JVM 安全性控制脚本执行方面提供的功能。也许这些链接会有所帮助:

http://groovy.codehaus.org/Security http://www.chrismoos.com/2010/03/24/groovy-scripts-and-jvm-security/

作为 JVM 安全性的替代方案,还有这个编译定制器:

http://groovy-sandbox.kohsuke.org/

这将允许您编写过滤器,以防止脚本获取对它们不应该引用的对象的引用。

于 2014-05-05T18:59:21.673 回答