如何在受限制的沙箱中运行Java程序

时间:2012-02-16 05:50:24

标签: java sandbox

我一直在尝试构建一个在线java编译器。但是在服务器上运行客户端代码会引发许多安全问题。

我能想到的很少 - 无限循环,限制访问API,限制内存使用等等。

我看过herehere。但我还有一些问题。

1)借助政策工具,可以限制对API的访问。但是我如何检查内存和CPU使用情况(无限循环,......)?

2)策略工具提供了授予权限而不是限制的选项。那么,如果我选择“运行时权限”和getStacktrace作为目标,那么所有其他人都将被限制?

2 个答案:

答案 0 :(得分:1)

您可以使用Ideone API。您对免费帐户有一定的限制,但它减轻了您处理安全的负担。

它可以作为web服务使用,它的WSDL可以在这里找到:ideone.com/api/1/service.wsdl

答案 1 :(得分:-1)

一个想法是在单独的线程上运行代码。如果在最大允许时间内没有完成,则杀死该线程。