2010-02-14 96 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對我來說:如果你正在配置一個共享文件夾,一定要設置文件夾和共享的權限,我花了很多時間直到我意識到這一點...