我目前是一个基于NodeJS编写的小型终端应用程序,并使用EncloseJS进行编译。我的应用程序需要在Windows和OSX上具有提升的权限才能正常工作,那么我该如何在Node中实现这一点呢?我还没有找到任何可以帮助我开始的东西。 谢谢。
对于Windows操作系统,有一个名为node-windows的软件包提供UAC控制。 在OS X操作系统中,命令行工具的标准方式不是要求权限。工具只使用它们被赋予的权限(有时会隐含地使用危险的setuid标志),如果这些权限不足,则会失败并要求使用sudo运行。 如果您的工具只需要短暂的权限(例如打开端口或秘密文件),则可以要求使用sudo启动它,然后使用process.setuid/setgid放弃特权。