作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以禁用将内容从类路径导入到 Java 脚本 API 中的脚本的功能?目标是在脚本运行时让脚本编写者只能访问引擎绑定(bind)中的内容。在某些情况下,将随机类导入脚本可能是一个安全问题。
最佳答案
可以像这样覆盖这些函数的定义并清理脚本:
private String sanitizeScript(String script) {
if (containsMoreThanOneStatement(script)) {
throw new ScriptedPermissionsException("Scripts may only contain one statement!!");
}
return new StringBuilder()
.append("function importPackage(a){ throw 'Cannot import!'};").append('\n')
.append("function importClass(a){ throw 'Cannot import!'};").append('\n')
.append("function JavaImporter(a){ throw 'I said, no importing!!'};").append('\n')
.append(script).append(';')
.toString();
}
然而,这仍然有一个警告,人们仍然可以这样做
java.lang.Class.forName('foo.bar.Zap')
关于java - 在 Java 脚本中禁用 importPackage、importClass 和 JavaImporter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10347342/
在 WeDriver 采样器中,我想使用 JavaImporter 调用我自己的类,它将执行登录页面的测试。输入用户名和密码并输入。 like to 的用法如下:var pkg = JavaImpor
是否可以禁用将内容从类路径导入到 Java 脚本 API 中的脚本的功能?目标是在脚本运行时让脚本编写者只能访问引擎绑定(bind)中的内容。在某些情况下,将随机类导入脚本可能是一个安全问题。 最佳答
我是一名优秀的程序员,十分优秀!