我想主持一款名为Minecraft的游戏,让人们上传自己的Java JAR
现在我想将它们限制在某个端口范围内
由于在虚拟框中运行所有JVM都是过度的,我们只是堆叠它们,但是如何阻止用户使用默认端口?
也许在启动行中有javaagent的东西?
编辑:
这是一个很好的示例代码吗?
System.setSecurityManager(...);
// invoke the jar with a URLClassLoader
答案 0 :(得分:3)
您应该能够修改JVM的安全策略以限制网络访问。这里有一些信息:http://docs.oracle.com/javase/1.4.2/docs/guide/security/permissions.html#SocketPermission
答案 1 :(得分:3)
我认为你实际上在寻找沙箱而不是防火墙。 java security manager允许您通过策略执行此类操作。
答案 2 :(得分:0)
那么文件系统访问等其他安全问题呢?看起来您需要在浏览器(Applet Security Managers)中像Applet一样限制VM。