我运行Node.js进程作为非root用户权限非常有限(limited_user
)。允许非root用户process.setuid某些其他用户
但是,在这个应用程序中,有一个潜在的可攻击的部分,我(除其他安全防范措施外)希望以更低权限的用户身份运行。我想这样做是通过将这部分程序放到一个不同的文件中并用childProc.execSync("node my_dangerous_subprocess.js");
来执行它。在该文件中,process.setuid('very_limited_user');
用于切换到不同的用户。
这很有效,只要我以root/sudo身份运行主进程即可。但是,我不想那样。如果可能的话,该流程应该由limited_user
运行 - 没有sudo权限。
因此,在Ubuntu 16.04 LS上运行,我能做些什么来允许某个非root用户(limited_user
)通过process.setuid
切换到某个其他用户(very_limited_user
)?
Node.js使用的版本是6.10.2。