如何启用文件系统访问Web服务?

时间:2012-01-25 00:02:36

标签: iis permissions iis-6 windows-server-2003

我有一个C#/。Net应用程序,它本质上是一个胖客户端数据收集应用程序。给定一个部件号,它会执行一些数据库查询(对外部Orcale数据库),一些Sharepoint查询,还会搜索一些网络驱动器以获取相关信息。现在我试图将其更改为面向服务的体系结构。 Web服务现在驻留在服务器上,当由瘦客户机调用时,db查询,sharepoint查询和文件系统查询并返回结果。除文件搜索外,所有这些都很有效。搜索结果是空的,我认为因为Web服务在其自己的小虚拟文件系统中执行,并且无法查看网络驱动器以扫描它需要扫描的文件。

有人可以推荐正确的方法来允许对网络驱动器进行受保护的读取访问,以便服务可以获取所需的信息吗?我不希望直接向瘦客户端提供这些文件,只是允许服务对我们办公室中的所有网络驱动器进行后端访问。顺便说一句,Web服务托管在IIS 6,Windows Server 2003上。

1 个答案:

答案 0 :(得分:2)

根据用户运行的Web服务(我不记得IIS6的默认值是什么,但怀疑它本质上是“NETWORK SERVICE”),如果它们是,它将无法读取网络共享担保。您最好的办法是为Web服务创建一个域帐户,然后使用“Internet信息服务(IIS)管理器”将应用程序池配置为以所述用户身份运行(注意:对于IIS 6,您还需要添加用户到LOCAL用户组“IIS_WPG”)。

一个小小的提示,你在整个问题中提到“网络驱动器”;您的服务不会共享任何已映射的网络驱动器,因此您需要为其提供完整的UNC路径(即\\server\share而不是m:\)才能使其正常工作。