我運行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。