Groovy 能不能只允许代码中引入一部分java类库?
因为项目中想把groovy脚本放开给前台用户,让他们自定义一部分逻辑/规则,但又担心用户会输入 System.exit 之类的破坏性代码。所以想问 Groovy 能不能只允许代码中引入一部分java类库?或者是否有更好的安全策略。
另:除了groovy , 还有什么脚本适合让用户自由定义,并与后台的java方便结合?(现在用的是java的javascript引擎Rhino, 但用户反应不太好)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
是的,现在用 Rhino 就是这样做的
谢谢各位的建议,
beanshell 好像没有对安全方面的直接管控, 不考虑了
DSL 就算了,没那水平
groovy 备选吧
还是打算沿用 Rhino ,但不用jdk6 内嵌的版本, 改用 mozilla 官方jar.
--------------
结贴
要实现的高级点,确实需要DSL,定义一套自己的语言规则
不知道
Java源代码解释器 Beanshell
是否满足需求
我举得应该以DSL的形式开放给用户,而不是允许他们随便编写Groovy代码
ScriptEngineManager
Javascript