是否可以从hawt.io插件(AngularJS)运行OS脚本

时间:2018-07-19 19:24:42

标签: angularjs tomcat hawtio

我已经在上面运行了Tomcat Webcontainer(8.0.x)和hawt.io(1.5.10)。

我想编写Hawt.io插件,该插件将重新启动JVM服务器(托管该jvm的服务器)。

让我们假设可以调用bash脚本来正常停止JVM并重新启动它。 是否可以从hawt.io插件调用此类外部OS脚本? 在哪里可以找到任何代码示例?

ps。我知道这将断开请求用户与hawt.io Web应用程序的连接。脚本和jvm将从同一uid运行。

1 个答案:

答案 0 :(得分:1)

我认为这是不可能的,因为Hawtio插件只不过是在浏览器上运行的前端AngularJS脚本。禁止从浏览器脚本运行OS脚本,否则可能会打开所有可能的安全攻击。

一种可能的解决方法是创建一个部署在Tomcat服务器上的自定义JMX MBean,然后在内部运行诸如Runtime.getRuntime().exec("...")之类的系统命令,并使用Hawtio插件从浏览器调用MBean。