gpt4 book ai didi

Java SecurityManager 多线程

转载 作者:行者123 更新时间:2023-11-30 05:57:16 26 4
gpt4 key购买 nike

我一直在尝试使用自定义 SecurityManager 来沙箱一些外部加载的代码。我的 SecurityManager 工作正常。我采取了与这里许多帖子建议的相同的方法:每当执行潜在危险的代码时设置自定义管理器,然后恢复到标准管理器。这工作得很好并且达到了我想要的效果。但是,该应用程序是多线程的:2 个线程使用自定义管理器,一个使用默认管理器。这会导致受信任的代码可能无法正常运行,因为另一个线程只是设置了自定义安全管理器。有办法解决这个问题吗?或者,还有更好的方法吗?我看到一些帖子谈论对同一安全管理器使用不同的策略,但我找不到一个很好的例子。非常感谢任何帮助。

最佳答案

您的 SecurityManager 可以检查哪个线程正在运行。一个简单的线程本地就可以做到这一点,但是,您可能需要一个 InheritableThreadLocal,以便创建的任何其他线程“继承”线程安全级别。

关于Java SecurityManager 多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5949430/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com