【问题标题】:How can run my web application in tomcat with a different user than tomcat?如何使用与 tomcat 不同的用户在 tomcat 中运行我的 Web 应用程序?
【发布时间】:2014-02-20 10:02:52
【问题描述】:

Ian 想做的是从我的 WEB 应用程序运行一些外部程序或命令(.sh、.pl 甚至直接使用 ProcessBuilder 或 Runtime)

我成功地在我的服务器上运行程序或命令,但问题是所有这些都以 tomcat 用户身份运行。然后,例如,当我尝试使用带有公钥的 ssh 时,我需要执行 sudo -u "user" 然后运行程序或命令。但不幸的是,我不知道为什么,它不起作用。

经过三天的故障排除,prof&error 和谷歌它,我正在考虑运行我的应用程序或处理不同的用户,因此避免使用 sudo 命令。

然后,我想知道是否有人可以告诉我如何做到这一点,或者是否有其他最好的方法来做到这一点。

【问题讨论】:

  • 只需为这个其他用户创建一个合适的 Tomcat 主目录。做起来并不难,关于它的文档比比皆是。
  • 我不认为这是被问到的;我相信他想以用户“A”的身份运行 Tomcat,但在该 Tomcat 环境中以用户“B”的身份运行一个进程。而且我认为如果没有 sudo,你真的无法做到这一点;我的意思是这就是命令的用途。
  • stackoverflow.com/questions/18647898/… 这可能会有所帮助

标签: java linux tomcat sudo processbuilder


【解决方案1】:

最后我所做的是通过JSch 和公钥身份验证来执行我的 ssh。这样我就不需要使用 sudo 命令,因为我可以指出我的用户和私钥。显然它不是用不同的用户运行 tomcat,但它解决了我的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-30
    • 1970-01-01
    • 2012-08-04
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 2012-05-27
    • 1970-01-01
    相关资源
    最近更新 更多