代码之家  ›  专栏  ›  技术社区  ›  nathanfranke

Java-安全执行JavaScript(ScriptEngine)

  •  0
  • nathanfranke  · 技术社区  · 6 年前

    ScriptEngineManager . 但是,它完全允许JavaScript,这对我来说是个大问题。

    • javax.swing.JOptionPane.showMessageDialog(null, "Hello, Server!");
    • java.lang.System.exit(0);

    如何限制Javascript引擎中Java函数的可用性?

    1 回复  |  直到 5 年前
        1
  •  1
  •   Suraj Rao Raas Masood    6 年前

    默认情况下,沙盒会阻止对所有Java类的访问。

    NashornSandbox sandbox = NashornSandboxes.create();
    sandbox.allow(File.class);  
    sandbox.eval("var File = Java.type('java.io.File'); File;")
    

    delight-nashorn-sandbox