gpt4 book ai didi

java - 将 Tomcat 与 Java SecurityManager 一起使用?

转载 作者:搜寻专家 更新时间:2023-11-01 03:14:52 24 4
gpt4 key购买 nike

我正在编写一个应该在 Ubuntu 上的 Tomcat 上运行的 Web 应用程序。在 Ubuntu 上,Tomcat 默认配置为与 Java SecurityManager 一起运行。除了我自己的 web 应用程序之外,只会有一些与我自己相关的知名第三方 web 应用程序,例如 BIRT 报表引擎。

如果其中一个 Web 应用程序出现故障或受到威胁,它可能会安全地关闭所有其他应用程序,因为它们都是一体的。我不会发生的是,一个受损的网络应用程序会损害系统本身,比如调用 rm -r/

我需要使用 java 安全管理器来实现吗?或者是否只需要保护一个 Web 应用程序免受另一个 Web 应用程序的影响?我真的很想避免为我打算使用的所有第 3 方 Web 应用程序创建 .policy 文件。

最佳答案

理论上是的。但我听说人们在尝试使用安全管理器“锁定”服务器端代码时会遇到一大堆问题。应用程序通常在设计时并未考虑到这一点,您会花费大量时间调试 SecurityExceptions,直到正确设置所有权限。

编辑:

我建议运行两个 Tomcat 实例更简单,以避免一个应用程序执行某些操作会导致单个 Tomcat 中的所有内容崩溃的问题。 (例如,填满堆、泄漏文件描述符或...调用 System.exit()。)

如果您仍然担心应用程序“脱离”Java 并执行与“rm/*”等效的操作,那么您可以在单独的“chroot jail ”或虚拟主机中运行每个 Tomcat 实例。或者您可以简单地从受限用户帐户运行 Tomcat,并确保该帐户无法访问/更新它不应访问的文件。

关于java - 将 Tomcat 与 Java SecurityManager 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1277276/

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