如何访问node.js中的共享networking驱动器

在IIS中,我有一个Web服务,它运行在具有访问远程计算机上驱动器的用户身份的应用程序池下。 这样,当Web服务运行并尝试访问远程机器来读取文件时,我们不会得到任何无效的授权错误。

我现在写了我的第一个Node.js应用程序,但我不知道如何允许从应用程序访问到远程机器的文件stream。 我有我想要读取的远程计算机文件的uncpath名称,但我不知道是否必须传递用户的凭据来访问该文件,或者我必须在某些凭据下运行Node.js应用程序。

任何线索?

我知道有IIS的节点,但是有没有IIS做到这一点的另一种方式。

更新:

只需在我的用户帐户下运行我的应用程序,并将此帐户configuration为允许访问远程计算机,并且可以访问远程计算机而不更改我的代码(换句话说就是直接使用Uncpath)。 但是,如何使用其他用户的凭据来执行此操作(例如,在Node.js中模拟?)

Node不像.NET应用程序那样处理模拟,因为NodeJS不是Windows特定的,所以它不知道处理权限和高程的窗口方式。

但这不是问题。 我在大型金融networking上使用了以下技术。

正如您自己指出的,最好的解决scheme是为您的nodeJS应用程序提供一个专用的用户帐户,并拥有足够权限访问UNC,但没有其他权限。 然后,当您运行应用程序时,以该用户身份运行它。

让我build议您设置一个服务来运行nodejs应用程序,并在服务中指定用户帐户。 这使得它更容易,更安全。 如果您的应用程序遭到黑客攻击,黑客将无法逃避帐户的限制。