假设某程序员给了我一个可执行的jar文件(来自Java代码),并告诉我如何使用入口点。我希望在一个受限制的沙盒环境中(没有网络、文件系统、数据库访问和固定的CPU和内存)以编程方式运行这个jar文件。也就是说,Java代码不应对正在运行于我的jvm上的其他程序产生任何副作用。
理想情况下,我希望允许某些访问权限基于特定情况(例如,只允许访问某个目录下的文件,并设置配额)。
重要提示 — 自从Java 17版本起,策略文件和安全管理器已被弃用并标记为将来移除。这篇博文解释了如何处理安全管理器后的沙盒问题。
java -Djava.security.manager -Djava.security.policy=/path/your_policy_file.policy -jar