之前做了一次关于分布是文件系统迁移,程序已经逐步的完成了改造,现在需要通过asp.net mvc下访问nfs映射出来的驱动器,但是发现有问题,不能访问到映射出来的驱动器,查找原因发现是因为应用程序池运行的账号可以没有权限,可以采用没有提权的本机账号进行,但是这样就要明文保存用户名和密码并且用户名和密码更改后会发生问题。
读了微软的相关文档,发现是账号权限隔离的问题,也就是如果运行在network servcie下应用程序池是看不到管理员或者其他账号映射的驱动器的。
那么问题就变成怎么给network service账号挂载nfs驱动器?network service即”NT AUTHORITYNetwork Service“,我们并不能登录这个账号去执行命令行。
解决方案是使用微软的SysInternal工具集合中的PsTool工具集合。
https://docs.microsoft.com/en-us/sysinternals/
PsExec.exe -u "NT AUTHORITY\Network Service" -i cmd
在之后的cmd内执行
mount xxx.xxx.xxx.xxx:/xxx z:
本文为Lokie.Wang原创文章,转载无需和我联系,但请注明来自lokie博客http://lokie.wang