我是SecurityManager的初学者。我一直在尝试使用Java SecurityManager在Linux中对一些不受信任的代码(应该是非常简单的代码,比如计算重量等)进行沙箱隔离。我使用命令
有一件事让我感到困惑:有人说SecurityManager的默认策略几乎允许所有操作,您需要编写自己的策略来拒绝某些风险操作(例如从磁盘读/写文件);而其他人则表示默认策略实际上会拒绝每个风险操作,如果您需要允许某个风险操作,则可以编写自己的策略。
我的问题是:
1.哪一个是正确的?(我找不到默认策略文件) 2.在我的情况下,我真的需要编写自己的安全策略吗?或编写自己的安全策略有什么优势? ps. 我实际上想拒绝所有风险操作。因此,如果默认策略是拒绝每个风险操作,我想我将使用默认的SecurityManager。
java -Djava.security.manager
来运行.class
文件。有一件事让我感到困惑:有人说SecurityManager的默认策略几乎允许所有操作,您需要编写自己的策略来拒绝某些风险操作(例如从磁盘读/写文件);而其他人则表示默认策略实际上会拒绝每个风险操作,如果您需要允许某个风险操作,则可以编写自己的策略。
我的问题是:
1.哪一个是正确的?(我找不到默认策略文件) 2.在我的情况下,我真的需要编写自己的安全策略吗?或编写自己的安全策略有什么优势? ps. 我实际上想拒绝所有风险操作。因此,如果默认策略是拒绝每个风险操作,我想我将使用默认的SecurityManager。