2010-02-14 98 views
0

我正在使用ASP.NET来调用我的WCF服务。在我的服务中,我访问一个文件,但我得到这个例外:WCF访问路径被拒绝

FaultException '1 was not handled by user code : Access to the path 'C:\Users\attilah\Documents\Visual Studio 2008\Projects\at\att\UploaderTemp\attilah\file1.pdf' is denied. 

回答

4

消息很清楚 - 试图读取文件的过程不允许这样做。

请注意,当您调用WCF服务时,不会以您自己的身份(作为调用者)对文件进行访问 - 如果您的WCF服务是由ASPNETNETWORK SYSTEM用户创建的托管在IIS中,或由用户托管您的WCF服务的NT服务正在运行。

这些有限的系统帐户是否有权访问服务器上磁盘上的该文件?最有可能不是......

0

在Windows中有文件访问审计。您可以使用它来获取有关访问错误的详细信息。所有事件将被收集到安全事件日志中。步骤来实现:

  1. 上定义审计“C:\用户\ attilah \”目录或整个硬盘通过属性 - >安全 - >审计
  2. 交换机上的本地安全策略审核(Control_Panel-> Administrative_Tools)
  3. 查找安全事件日志

第二种方法事件被标记Russinovich(www.sysinternals.com)使用进程监视器

0

刚抬起头,它只是happene对我来说:如果你正在配置一个共享文件夹,一定要设置文件夹和共享的权限,我花了很多时间直到我意识到这一点...