2009-06-03 63 views
0

我有一个WCF Web服务,我在IIS中托管(实际上在Visual Studio Web主机内运行,即Cassini)。WCF文件权限?

我有一个文件,我必须从服务访问Web目录的根目录,并且无法找出服务访问该目录的用户身份。我已经授予ASPNET,NETWORK SERVICE和IUSR的许可,但这些似乎都不起作用。

任何人都知道用户是什么WCF服务运行,因为它是当它托管在IIS中?

更多信息:

事实上,WCF服务正在运行为我(我的Windows帐户),但不管是什么原因,但仍无法打开在其根目录下的文件。该文件因“访问被拒绝”而失败。我已经给出了“每个人”完全控制该文件夹,它似乎并不重要。

回答

0

好吧......找出问题所在。原来我试图打开的文件被标记为只读,所以.NET无法打开它进行写入。通过FileAccess.Read到File.Open()方法,现在它打开罚款。

与WCF本身无关。

0

如果您使用卡西尼运行yr serive,那么它将成为登录到该计算机的用户。 所以可能你的用户名已经用来登录到该机器。为该用户授予阅读该文件的权限并进行尝试。

在IIS上,它取决于您的应用程序配置。您可以在任何用户帐户下创建应用程序池,并使用该池运行年度应用程序。 IIS中的默认用户是NETWORK SERVICES。

+0

嗯...这两个用户都有完整的目录权限,但仍然无效。也许我错过了一些东西...... – 2009-06-05 13:46:42