【发布时间】:2016-02-05 12:39:37
【问题描述】:
如果我将 java 文件放在任何文件夹中(不是通过 war 运行),以下代码就可以正常运行
new ProcessBuilder("ssh b15h278@my.host.com \"echo success\"").start();
我得到了“成功”。但如果我将代码部署为战争,它会给我“权限被拒绝(公钥)。”。我已经在目标主机中注册了密钥。
【问题讨论】:
-
当您自己运行代码时,您以什么用户 ID 运行它?当它在 WAR 中运行(并且失败)时,它以什么用户 ID 运行?您是否已采取措施确保它在两种情况下都使用相同的密钥?