我想创建一个安全的ColdFusion环境,我正在使用多个沙箱配置.使用友好的管理员界面可轻松实现以下任务:
而其他人则相应地使用Web服务器的配置.
所以我对设置感到满意只是为了以后遇到,无论应用于cfexecute标签的限制如何,都可以用来java.lang.Runtime轻松地执行系统文件或脚本;
String[] cmd = {"cmd.exe", 'net stop "ColdFusion 10 Application Server"'};
Process p = Runtime.getRuntime().exec(cmd);
Run Code Online (Sandbox Code Playgroud)
或使用java.lang.ProcessBuilder:
ProcessBuilder pb = new ProcessBuilder("cmd.exe", 'net stop "ColdFusion 10 Application Server"');
....
Process myProcess = pb.start();
Run Code Online (Sandbox Code Playgroud)
问题是我找不到任何允许我禁用这两个类的解决方案:java.lang.Runtime&java.lang.ProcessBuilderfor the createObject().对于注释:我已经在sanbox和os权限中尝试过文件限制,但不幸的是它们似乎只在I/O文件操作上工作,我不能搞乱系统库的安全策略,因为它们可能在内部使用通过ColdFusion.